Найдите выведите на экран все трехзначные числа,кратные 20,сумма цифр которых равны сумме цифр частного от деления их на 20 может так uses crt; var b,c,d,t,i,s,k: integer; o: real; begin s: =0; for k: =100 to 1000000000 do begin b: =k mod 10; c: =k div 100; d: =(k mod 100)div 10; t: =d+b+c; o: =(b div 20)+(c div 20)+(d div 20); if ((k mod 20)=0) and (t=o) then s: =s+1; end; writeln('s=',s); end.
Ваш алгорим не оптимален, совершенно незачем делать "for k:=100 to 1000000000 do", т.к. по условию необходимо проверить лишь трехзначные числа.
uses crt;
var a,b,k:integer;
begin
for k:=100 to 999 do
if k mod 20 =0
then begin
a:= k div 20;
b:= k div 10;
if ((a mod 10) + (a div 10)) = ((k mod 10) + (b mod 10) + (a div 10)) then writeln(k);
end;
end.