{ Вывести в 10 столбиков все шестизначные числа которые деляться без остатка на сумму квадратов своих цифр }
program p1;
var fx: integer;// счетчик всех 6-ти значных чисел i, j, k: byte;// счетчики ax, bx: integer;// вычисления sum: integer;// сумма квадратов цифр числа
begin
k := 1;// столбики for fx := 100000 to 999999 do begin sum := 0; //сумма квадратов for j := 6 downto 1 do begin ax := 1; for i := 1 to j - 1 do ax := 10 * ax;
bx := (fx div ax) mod 10; //вычленение отдельных цифр bx := bx * bx; //квадрат цифры
sum := sum + bx; end;
if (fx div sum) = (fx / sum) then if (k < 11) then begin write(fx, ' '); k := k + 1; end else begin writeln; k := 1; end; end;
Вывести в 10 столбиков все шестизначные числа которые деляться без остатка на сумму квадратов своих цифр
}
program p1;
var
fx: integer;// счетчик всех 6-ти значных чисел
i, j, k: byte;// счетчики
ax, bx: integer;// вычисления
sum: integer;// сумма квадратов цифр числа
begin
k := 1;// столбики
for fx := 100000 to 999999 do
begin
sum := 0; //сумма квадратов
for j := 6 downto 1 do
begin
ax := 1;
for i := 1 to j - 1 do
ax := 10 * ax;
bx := (fx div ax) mod 10; //вычленение отдельных цифр
bx := bx * bx; //квадрат цифры
sum := sum + bx;
end;
if (fx div sum) = (fx / sum) then
if (k < 11) then begin
write(fx, ' ');
k := k + 1;
end else begin
writeln;
k := 1;
end;
end;
end.