Предмет: Информатика, автор: BrawlStarser1338

СРОЧНО!!! МОЖЕТЕ НА ПИТОНЕ СДЕЛАТЬ?



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


Формат входных данных

Входной файл содержит натуральное четырехзначное число.


Формат выходных данных

Вывести количество таких цифр, а далее вывести сами цифры в порядке возрастания без повторений.


Примеры:

Вход

2428

Выход

2

2 4


BrawlStarser1338: пажалуйста, помогите
perevernusb: "Вывести количество таких цифр" каких "таких"?. И почему вывод 2 4, а не 2 4 8?

Ответы

Автор ответа: Аноним
2

Ответ:

n = int(input()) # n = 2428

dx = []

x = n

while x > 0:

   if n % (x % 10) == 0:

       if str(x % 10) not in dx:

           dx.append(str(x % 10))

   x = x // 10

dx.sort()

print(len(dx))

print(' '.join(dx))

Объяснение:

n = int(input()) # n = 2428

dx = []

x = n # чтобы не изменить число, вводим новую переменную x = 2428

while x > 0:

   if n % (x % 10) == 0: # находим остаток от деления на последнюю цифру 2428 % (8) != 0

       if str(x % 10) not in dx: # если цифры нет в списке  

           dx.append(str(x % 10)) # добавляем в список в строковом формате

   x = x // 10 # отбрасываем последнюю цифру от числа x = 242

dx.sort() # сортируем список по возрастанию

print(len(dx))

print(' '.join(dx))


Аноним: n = int(input())
dx = []
x = n
while x > 0:
if n % (x % 10) == 0:
if str(x % 10) not in dx:
dx.append(str(x % 10))
x = x // 10
dx.sort()
print(len(dx))
print(' '.join(dx))
Аноним: не туда объяснения вставил ))))
Похожие вопросы
Предмет: Геометрия, автор: Аноним