| 
           
 Задача 33. 
Написать программу, которая находит и выводит на печать все четырехзначные abcd, числа а, b, с, d - различные цифры, для которых выполняется: ab-cd=a+b+c+d. 
{Задачу можно решать несколькими способами. Одним из возможных способов является перебор всех четырехзначных чисел и проверка для каждого из них выполнения условий. Попробуем сократить перебор, для этого преобразуем второе условие: 
10а+b-(10c+d)=a+b+c+d; 
9(a-c)=2(c+d); 
(a-c)/(c+d)=2/9 
Проанализировав первое условие, получаем, что а=с+2, d=9-c, следовательно 0<=c<=7.}
  
program prim4; 
  uses crt; 
  var a,b,c,d: integer; 
begin 
  clrscr; 
  for c:=0 to 7 do  
    begin 
      a:=c+2; d;=9-c; 
      for b:=0 to 9 do  
        begin 
          if    (b<>c)and(b<>a)and(b<>d) 
          then 
          write(a,b,c,d); 
          writeln 
        end; 
    end; 
  readln; 
end.
  
{Таким образом, мы решили задачу, значительно сократив перебор.} 
	
  
       |