Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from functools import reduce
- from operator import mul
- a = int(input('Введите натуральное число: '))
- b = [x for x in range(1, a) if
- x not in [i for sub in [list(range(2 * j, a, j)) for j in range(2, a // 2)] for i in sub]] #получаем список всех простых чисел до a
- d = list(range(2, a)) #получаем список всех чисел до a
- c = []
- for x in b:
- for j in d: #берём список чисел d
- if j % x == 0: #делим весь список d на первый элемент b
- d.insert(x, j/x) #если элемент делится нацело, заменяем его на частное d/b
- c.append(x) #добавляем с каждой итерацией деления простой делитель в список "c"
- else:
- continue #если не нацело, оставляем как есть
- print(c)
- print(reduce(mul, c))
Add Comment
Please, Sign In to add comment