Сделал 18 задание Параграф 2.3
This commit is contained in:
parent
3c01643715
commit
92da87b890
37
2.3_lesson.18.20.py
Normal file
37
2.3_lesson.18.20.py
Normal 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))
|
||||||
Loading…
Reference in a new issue