| Задача 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.
 
 {Таким образом, мы решили задачу, значительно сократив перебор.}
 
 
 |