с информатикой нужно решить задачу на питоне
Дано натуральное число N.Найти и вывести все числа в интервале от 1 до N-1,у которых все сумма цифр совпадает с суммой цифр данного числа.Если таких нет то вывести слово нет.
Пример N=44 Числа:17,26,35

Elaria1 Elaria1    1   30.03.2020 10:14    11

Ответы
meribageee meribageee  28.08.2020 01:34

N = str(input())

amount = 0

for i in N:

   amount += int(i)

number_list = []

for number in range(int(N)):

   amount_number = 0

   for num in str(number):

       amount_number += int(num)

       if amount_number == amount:

           if len(str(number)) > 1:

               number_list.append(number)

print(number_list)

ПОКАЗАТЬ ОТВЕТЫ
Evgeniusz Evgeniusz  24.01.2024 21:06
Хорошо, давайте решим задачу.

Дано натуральное число N. Мы должны найти и вывести все числа в интервале от 1 до N-1, у которых сумма цифр совпадает с суммой цифр данного числа. Если таких чисел нет, то мы должны вывести слово "нет".

Для начала, разберемся с тем, как найти сумму цифр данного числа. Мы можем пройтись по всем цифрам числа и сложить их. Для этого нам понадобится преобразовать число в строку, а затем итерироваться по всем его символам.

Итак, давайте создадим функцию, которая будет находить сумму цифр числа. Вот код:

```python
def сумма_цифр(число):
сумма = 0
for цифра_в_строке in str(число):
сумма += int(цифра_в_строке)
return сумма
```

Теперь нам нужно пройтись по всем числам в интервале от 1 до N-1 и проверить, совпадает ли сумма исходного числа с суммой его цифр. Если да, то мы будем сохранять это число в специальный список.

Давайте создадим функцию, которая будет находить все такие числа и возвращать их. Вот код:

```python
def найди_числа(N):
числа = []
for число in range(1, N):
if сумма_цифр(число) == число:
числа.append(число)
return числа
```

Наконец, мы можем вызвать функцию `найди_числа` с заданным значением N и вывести результат.

Вот полный код:

```python
def сумма_цифр(число):
сумма = 0
for цифра_в_строке in str(число):
сумма += int(цифра_в_строке)
return сумма

def найди_числа(N):
числа = []
for число in range(1, N):
if сумма_цифр(число) == число:
числа.append(число)
return числа

N = 44
числа = найди_числа(N)
if len(числа) > 0:
print("Числа:", числа)
else:
print("Нет")
```

Надеюсь, это помогло! Если у вас возникнут еще вопросы, не стесняйтесь спрашивать.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика