PromathBul / Prime_factors

Разбивает натуральное число на простые множители

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Задача

Задайте натуральное число N. Напишите программу, которая составит список простых множителей числа N.

Решение

Для поиска простых множителей через цикл while определяем числа, которые делят изначальное число без остатка. Записываем их в список, и делим изначальное число на записанный делитель. Перебор чисел идет пока квадрат индекса меньше или равен нашему числу. Такой подход исходит из того, что величина простого числа в диапазоне от [1, num] не превышает $\sqrt{num}$.

Если после окончания этого алгоритма число num не станет равно 1, то оставшееся значение также является простым, так как не делится ни на одно число, не превосходящее $\sqrt{num}$. Поэтому его надо добавить к списку простых делителей.

About

Разбивает натуральное число на простые множители


Languages

Language:Python 100.0%