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

Ответы на вопрос

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



Конечно, вот пример программы на Python, которая выполняет заданную задачу:
```python def sum_of_digits(number): """Функция для вычисления суммы цифр числа.""" return sum(int(digit) for digit in str(number))
def check_multiplication_invariance(number): """Проверка, что сумма цифр числа не меняется при умножении на 2, 3, 4, 5, 6, 7, 8 и 9.""" initial_sum = sum_of_digits(number) for multiplier in range(2, 10): product = number * multiplier if sum_of_digits(product) != initial_sum: return False return True
def find_numbers_with_invariant_sums(N): """Находит все числа на отрезке [0, N], сумма цифр которых не меняется при умножении на 2, 3, 4, 5, 6, 7, 8 и 9.""" numbers_with_invariant_sums = [] for num in range(N + 1): if check_multiplication_invariance(num): numbers_with_invariant_sums.append(num) return numbers_with_invariant_sums
# Ввод натурального числа от пользователя N = int(input("Введите натуральное число N: "))
# Поиск и вывод чисел с инвариантной суммой цифр result = find_numbers_with_invariant_sums(N) print(f"Числа на отрезке [0, {N}], сумма цифр которых не меняется при умножении на 2, 3, 4, 5, 6, 7, 8 и 9: {result}") ```
Программа определяет функцию `sum_of_digits` для вычисления суммы цифр числа, затем `check_multiplication_invariance` для проверки, что сумма цифр числа не меняется при умножении на 2, 3, 4, 5, 6, 7, 8 и 9. Наконец, `find_numbers_with_invariant_sums` находит все числа на отрезке [0, N], удовлетворяющие этому условию.


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili