Найдите выведите на экран все трехзначные числа,кратные 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 ...

Найдите выведите на экран все трехзначные числа,кратные 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.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы