В четверг, 7 мая, около 16 часов (MSK) регистратор заморозил домен «cyclowiki.org» без уведомления владельцев. Сайт недоступен из большинства стран. Правление изучает возможности решения проблемы.

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

Материал из Циклопедии
(перенаправлено с «Разложение на множители»)
Перейти к навигации Перейти к поиску
Как разложить число на простые множители. Простой и легкий способ // Мини уроки по математике [6:47]

Разложение на множители — это нахождение простых сомножителей и их степеней в произведении, дающем исходное натуральное число. Подобное разложение существует и единственно (с точностью до порядка сомножителей) согласно основной теореме арифметики.

Обозначения[править]

pi — i-ое простое число;

n — натуральное число, для которого ищется разложение вида ;

m — количество различных простых множителей в числе n;

j — номер простого числа в основании -ого множителя;

s — показатель степени -ого множителя;

k — длина списка простых чисел, поиск которых (в качестве множителя) проводит алгоритм.

Nk = {1; 2; …; k} — множество натуральных чисел, не превосходящих k.

Алгоритм разложения на множители[править]

Ниже приведен простейший алгоритм разложения на множители. Он не является оптимальным и для «больших» чисел неэффективен сравнительно с более быстрыми алгоритмами.

Входные данные: n; k; {p1, p2, … pk}.

  1. si = 0, ∀iNk.
  2. i = 1; m = 0; d = n.
  3. Если d не кратно pi, то идти к 7.
  4. m = m + 1; jm = i.
  5. d = d / pi; sm = sm + 1.
  6. Если d кратно pi, то идти к 5.
  7. i = i + 1.
  8. Если ik и d > 1, то идти к 3.

Выходные данные: m; {j1, j2, … jm}; {s1, s2, … sm}.

Алгоритм даёт указанное разложение при наличии во входном списке {pi} всех простых делителей числа n. Если какие-то делители пропущены, то получается разложение вида , где d — натуральное число, не делящееся на простые числа из списка {pi}.

Другие алгоритмы:[править]