begin for a : = 1000 to 9999 do begin c1 : = a div 1000; c2 : = (a div 100) mod 10; c3 : = (a div 10) mod 10; c4 : = a mod 10; if (c1 < > c2) and (c1 < > c3) and (c1 < > c4) and (c2 < > c3) and (c2 < > c4) and (c3 < > c4) then writeln(a); end; end.
Ответ дал: Гость
var a,b,s: integer; begin readln(a); while a> =10 do begin b: =a mod 10; s: =s+sqr(b); a: =a div 10; end; a: =a*a; s: =s+a; writeln(s); readln; end.в s накапливаем сумму квадратов, b это остатки от деления на десять, после цикла прибавляем последнюю цифру,которая меньше десяти, предворительно возведя её в квадрат!
Популярные вопросы