Сделал 18 задание Параграф 2.3

This commit is contained in:
parent 3c01643715
commit 92da87b890

37
2.3_lesson.18.20.py Normal file
View file

@ -0,0 +1,37 @@
''' ****** Задание 18(R) из 20 Параграф 2.3 *********
* Математика, "простые числа" и цикл while.
"Простые числа" не поддаются формализации и до сих пор изучаются учеными по всему миру.
Они применяются в вычислительной техники, как основа для алгоритмов шифрования данных.
Напишите программу для разложения числа на простые множители.
Формат ввода
Вводится одно натуральное число.
Формат вывода
Требуется составить математическое выражение – произведение простых неубывающих чисел, которое в результате дает исходное.
Пример 1
Ввод
120
Вывод
2 * 2 * 2 * 3 * 5
'''
if __name__ == "__main__":
n = int(input())
factor = 2
result = []
while n > 1:
if n % factor == 0:
result.append(str(factor))
n //= factor
else:
factor += 1
print(' * '.join(result))