Предмет: Информатика,
автор: BrawlStarser1338
СРОЧНО!!! МОЖЕТЕ НА ПИТОНЕ СДЕЛАТЬ?
Дано натуральное четырехзначное число. Определить все цифры в цифровой записи данного числа, на которые оно делится без остатка.
Формат входных данных
Входной файл содержит натуральное четырехзначное число.
Формат выходных данных
Вывести количество таких цифр, а далее вывести сами цифры в порядке возрастания без повторений.
Примеры:
Вход
2428
Выход
2
2 4
BrawlStarser1338:
пажалуйста, помогите
Ответы
Автор ответа:
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))
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))
Похожие вопросы
Предмет: Геометрия,
автор: Elnarko12
Предмет: Химия,
автор: ganstersov
Предмет: Математика,
автор: обр
Предмет: Математика,
автор: disa6
Предмет: Геометрия,
автор: Аноним