Вопрос задан 27.02.2019 в 17:39. Предмет Информатика. Спрашивает Нуралиев Анвар.

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

цифр которых не меняется при умножении числа на 2,3,4,5,6,7,8 и 9 (например, число 9). Используйте функцию для вычисления суммы цифр числа.
0 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
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, вот пример программы на 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], удовлетворяющие этому условию.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос