Напишите программу, которая вводит натуральное число и находит все числа ** отрезке [0,...

0 голосов
79 просмотров

Напишите программу, которая вводит натуральное число и находит все числа на отрезке [0, N], сумма цифр которых не меняется при умножении числа на
2,3,4,5,6,7,8 и 9 (например, число 9). Используйте функцию для вычисления суммы цифр числа.


Информатика (260 баллов) | 79 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

//Pascal ABC.NET v3.0 сборка 1111

Var
 n,i:integer;

 function sol(a:integer):integer;
var
 i,k:integer;
 s:string;
begin
k:=0;
str(a,s);
 for i:=1 to length(s) do
  k:=k+strtoint(s[i]);
 sol:=k;
end;

 begin
 readln(n);
  for i:=0 to n do
   if (sol(i*2)=sol(i*3)) and (sol(i*3)=sol(i*4)) and (sol(i*4)=sol(i*5)) and (sol(i*5)=sol(i*6)) and (sol(i*6)=sol(i*7)) and (sol(i*7)=sol(i*8)) and (sol(i*8)=sol(i*9)) then writeln(i);
end.

Пример ввода:
555
Пример вывода:
0
9
18
45
90
99
180
198
297
396
450
495
549

(38.6k баллов)