Перейти к основному содержанию
CalcMax

Калькулятор делителей числа

Диапазон: 1 – 1 000 000

Результат

1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 60

Множители

Пары множителей
1 * 60, 2 * 30, 3 * 20, 4 * 15, 5 * 12, 6 * 10

Делитель целого числа — это другое целое число, на которое первое делится нацело, без остатка. Делители числа 60 — это 1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30 и 60, всего двенадцать, и они всегда разбиваются на пары, произведение которых снова даёт 60: 1 и 60, 2 и 30, 3 и 20, 4 и 15, 5 и 12, 6 и 10. Страница печатает оба прочтения — плоский список делителей и пары, — потому что отвечают они на разные вопросы. Список нужен, когда проверяют, делится ли одно число на другое; пары нужны, когда ищут прямоугольник с такой площадью или два числа с заранее известным произведением. Метод — перебор делителей, и полезнее всего в нём знать, когда останавливаться. Чтобы найти все делители числа 60, нет нужды проверять дальше восьмёрки: 8 × 8 = 64, а за квадратным корнем каждый найденный делитель оказался бы большей половиной пары, меньшая половина которой уже встречалась. Поэтому 60 требует семи проверок вместо пятидесяти девяти, и поэтому же число из семи цифр на этой странице всё ещё считается быстро, хотя потолок здесь — миллион. Тот же порог объясняет, почему пары выходят упорядоченными: как только находится маленький делитель, его партнёр выдаётся в тот же момент, так что пары оказываются отсортированными по своей меньшей половине без всякой сортировки. Два особых случая стоит знать до того, как смотреть на результат. У простого числа делителей ровно два — единица и оно само, поэтому список у него короткий, а в парах всего одна строка. У полного квадрата делителей нечётное число, потому что средняя пара — это одно и то же число дважды: у 36 девять делителей, и пары заканчиваются на 6 * 6, что страница печатает один раз. Ни то, ни другое не ошибка и не отдельная ветка в коде — и то и другое получается из одного и того же цикла. Чего страница не делает, так это не раскладывает число на простые множители. Она показывает все делители и все пары и с удовольствием сообщит, что у 60 двенадцать делителей, ни разу не сказав, что 60 = 2² × 3 × 5: в списке делителей кусочки разложения присутствуют, но самим разложением он не является. Разница становится важной на больших числах: объём работы здесь растёт как квадратный корень из ввода, тогда как разложение на простые множители — задача по-настоящему трудная, и это два разных вопроса. Отдельно стоит сказать про число делителей: у 60 их двенадцать, у 36 девять, у 12 шесть, и по величине числа это не угадывается — всё решает то, как складываются его простые кусочки.

Три числа с их делителями и парами множителей рядом

ЧислоДелителиПары множителей
121, 2, 3, 4, 6, 121 * 12, 2 * 6, 3 * 4
361, 2, 3, 4, 6, 9, 12, 18, 361 * 36, 2 * 18, 3 * 12, 4 * 9, 6 * 6
601, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 601 * 60, 2 * 30, 3 * 20, 4 * 15, 5 * 12, 6 * 10

Читайте строку слева направо: средний столбец — это развёрнутый третий. У 12 шесть делителей и три пары, у 36 девять делителей и пять пар, у 60 двенадцать делителей и шесть пар. Сравнивать здесь стоит именно количества. Шесть — чётное, девять — нечётное, двенадцать — чётное, и 36 — единственный полный квадрат в таблице, отчего он и выбивается. У каждого делителя, кроме квадратного корня, есть партнёр, поэтому они дают чётный вклад, а квадратный корень остаётся один. Второе, что здесь видно: больше делителей не следует из большего числа. 36 втрое больше 12 и имеет в полтора раза больше делителей, а 60 впятеро больше 12 и удваивает их. Сколько у числа делителей, решает то, как складываются его простые кусочки, а не его величина, — по той же причине у 720720, куда меньшего миллиона, делителей больше, чем у любого числа рядом.

Формула

60 ÷ 1 = 60 ⇒ 1 * 60; 60 ÷ 2 = 30 ⇒ 2 * 30; 60 ÷ 3 = 20 ⇒ 3 * 20; 60 ÷ 4 = 15 ⇒ 4 * 15; 60 ÷ 5 = 12 ⇒ 5 * 12; 60 ÷ 6 = 10 ⇒ 6 * 10; 60 ÷ 7 нацело не делится, 8 × 8 > 60, стоп

n
Число, которое раскладывают на делители, — целое от 1 до 1 000 000. Единица допускается и даёт единственный делитель, 1: это настоящий ответ, а не вырожденный случай — единица делится сама на себя и не делит нацело ничего, кроме своих кратных
d
Пробный делитель, проверяемый по порядку: 1, 2, 3, 4 и так далее. Страница никогда не заходит дальше квадратного корня из n, и в этом весь фокус: если d × e = n и d больше корня, то e меньше него, значит e уже найдено и пара уже напечатана
d * d ≤ n
Условие остановки, записанное явно. Для 60 последний проверяемый делитель — 7, потому что 7 × 7 = 49 меньше 60, а 8 × 8 = 64 уже больше. Из-за этого правила число проверок растёт как квадратный корень из ввода, а не как сам ввод: миллион требует тысячи проб, а не миллиона
n / d
Партнёр делителя. Когда d делит n нацело, частное и есть вторая половина пары, и страница выдаёт её тем же шагом. Поэтому пары для 60 выходят как 1 * 60, 2 * 30, 3 * 20 и далее по порядку, без сортировки: меньшие половины находятся по возрастанию, а значит и пары тоже
1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 60
Все делители числа 60 одним плоским списком, по возрастанию. Двенадцать штук — чётное число: разбиение на пары полное, у каждого делителя есть партнёр. Это ровно та же информация, что и в парах ниже, только разложенная: прочитайте пары и соберите числа — получите эту строку обратно
6 * 6
Средняя пара числа 36 и единственная форма, в которой делитель встречается в одной строке дважды. 36 — полный квадрат, поэтому делителей у него нечётное число: 1, 2, 3, 4, 6, 9, 12, 18, 36, то есть девять, и страница печатает среднюю пару один раз, а не дважды. Вот почему у полного квадрата число делителей никогда не бывает чётным

Сокращение дроби — самая частая причина искать список делителей. Чтобы вручную сократить 42/60, вы ищете число, на которое делятся оба: делители 60 подсказывают кандидатов, а делители 42 — какие из них подходят; наибольший из подходящих и есть наибольший общий делитель, и если нужен только он, на этот вопрос прямо отвечает отдельная страница про НОД. Второе применение — прямоугольник с заданной площадью: грядка в 60 квадратных метров может быть 1 на 60, 2 на 30, 3 на 20, 4 на 15, 5 на 12 или 6 на 10, и пары множителей — это ровно список возможных форм, поэтому они и печатаются в таком виде. Тот же вопрос возникает всюду, где предметы надо расставить равными рядами и столбцами: рассадить 60 гостей за столы одинакового размера или разбить класс на группы равной численности, чтобы никто не остался лишним. Третье применение — проверка утверждения. Если кто-то говорит, что 91 — простое число, список его делителей закрывает вопрос: 1, 7, 13, 91, и то, что строк четыре, а не две, и есть опровержение. Признаки делимости на 2, 3, 5 и 9 покрывают мелкие случаи вручную, а эта страница подхватывает там, где они перестают быть удобными. Когда вопрос на самом деле не о делителях, а о кусочках, ответ живёт в другом месте: разложение на простые множители делает отдельная страница про простые множители, а сравнивают два числа между собой, а не описывают одно, страницы про НОК и НОД; сократить дробь сразу, не показывая список, умеет страница про сокращение дробей.

Разобранные примеры

  1. Двенадцать делителей: 60

    1. Проба 1: 60 ÷ 1 = 60 нацело, значит и 1, и 60 — делители
    2. Проба 2: 60 ÷ 2 = 30, значит 2 и 30 — делители; проба 3: 60 ÷ 3 = 20, это 3 и 20
    3. Проба 4: 60 ÷ 4 = 15, это 4 и 15; проба 5: 60 ÷ 5 = 12, это 5 и 12
    4. Проба 6: 60 ÷ 6 = 10, это 6 и 10; проба 7: 60 ÷ 7 нацело не делится
    5. 8 × 8 = 64 уже больше 60, значит пора остановиться — двенадцать делителей собраны полностью

    Ввод по умолчанию, и удачный: у 60 делителей много — двенадцать, больше, чем у любого числа до него. Обратите внимание, насколько дешёвым оказался поиск: семь проб вместо шестидесяти. Строка пар и список делителей — это одни и те же двенадцать чисел; пары просто сложены так, что каждое стоит рядом с тем, на что умножается. Стоит заметить и то, что список пар заканчивается на 6 * 10, а не продолжается на 10 * 6: как только меньшая половина пары переходит через квадратный корень, каждая оставшаяся пара повторяет уже напечатанную.

  2. Полный квадрат: 36

    1. 1 и 36 образуют пару, затем 2 и 18, затем 3 и 12, затем 4 и 9
    2. 6 × 6 = 36, значит 6 — партнёр самому себе, это середина списка
    3. 7 не делит 36; 7 × 7 = 49 уже больше, но 6 был последним делителем под квадратным корнем
    4. Делители: 1, 2, 3, 4, 6, 9, 12, 18, 36 — девять штук, нечётное число

    Случай, который объясняет, почему число делителей вообще может быть нечётным. У каждого делителя, кроме квадратного корня, есть отдельный партнёр, поэтому они разбиваются на пары и дают чётный вклад; квадратный корень оказывается партнёром самому себе и добавляет единицу. Отсюда и вся разница: у 36 делителей девять, а у 60, числа большего, — двенадцать; у 12 — шесть. В строке пар 6 * 6 напечатано один раз, а не дважды, и это решение: напечатай страница дважды, две строки начали бы расходиться в том, сколько всего делителей.

  3. Простое число: 7

    1. Проба 1: 7 ÷ 1 = 7 нацело, значит 1 и 7 — делители
    2. Проба 2: 7 ÷ 2 нацело не делится; 3 × 3 = 9 уже больше 7, значит поиск здесь и заканчивается
    3. Ничто между 1 и 7 на 7 не делится
    4. Два делителя и одна пара — это и есть определение простого числа

    Самый короткий нетривиальный результат на странице и тот случай, который показывает: простое число — не неудача перебора. У простого числа ровно два делителя, и это всегда 1 и само число; страница сообщает этот факт, а не жалуется, что ничего не нашла. Условие остановки здесь работает по-настоящему: после проверки двойки проверять уже нечего, потому что 3 × 3 больше 7. Пробы 3, 4, 5 и 6 стоили бы четырёх делений и не могли бы ничего найти.

Ограничения

Ввод должен быть целым числом от 1 до 1 000 000. Ноль отклоняется: на ноль делится любое целое число, поэтому список его делителей был бы бесконечным и печатать в нём было бы нечего. Отрицательные числа тоже отклоняются, хотя ±1, ±2 и так далее делят −60: страница сообщает положительные делители положительного числа, а для списка со знаками понадобилось бы соглашение о том, показывать ли оба знака, которого эта страница нигде не формулирует. Дробные числа отклоняются, а не округляются. Потолок в миллион ограничивает перебор: поиск останавливается на квадратном корне, поэтому в худшем случае это тысяча проб, и список ответов может быть длинным, но не безразмерным. Длинным он всё же бывает: у 720 720 делителей 240 — больше, чем у любого числа до миллиона, — и такой список верен, но читать его не слишком приятно. Далее, страница сообщает делители и пары множителей, а не простые множители, и разницу легко не заметить: в списке делителей 60 присутствуют 2, 3 и 5, но страница нигде не говорит, что 60 = 2² × 3 × 5, а для большого числа эти два вопроса стоят совершенно по-разному. Признаки делимости на 2, 3, 5 и 9 отдельно не выделяются — они просто растворяются в переборе, так что число, оканчивающееся на ноль, покажет 2, 5 и 10 в делителях без всякого объяснения почему. Каждый делитель печатается целым числом в списке через запятую, а в парах для умножения стоит звёздочка; разделителей разрядов в выводе нет, поэтому делитель-миллион печатается как 1000000 — обратите внимание, что в тексте этой страницы то же число записано как 1 000 000, и это не противоречие: панель выводит строку как есть, а проза следует правилам языка. Наконец, таблица ниже показывает три фиксированных числа, а не следует за вашим вводом; отвечает на введённое число панель выше.

Частые вопросы

Чем делитель отличается от множителя?
В этой теме это почти одно и то же, и различаются они только чтением. Делитель — число, на которое делят: 5 — делитель 60, потому что 60 делится на 5 нацело. Множитель — число, которое умножают: в записи 5 × 12 = 60 оба числа множители. Один и тот же делитель всегда можно прочитать как множитель, потому что 60 ÷ 5 = 12 и 5 × 12 = 60 — это одно утверждение, только с разных сторон. Поэтому список делителей и пары множителей на этой странице содержат одни и те же числа, свёрнутые по-разному.
Почему у простого числа всего два делителя?
Потому что так оно и определяется: простое число — то, у которого делителей ровно два, единица и оно само. Для 7 список выглядит как 1, 7, а пар всего одна — 1 * 7. Это не неудача перебора и не особый случай в коде: цикл просто не находит между единицей и самим числом ничего, на что оно делилось бы нацело. И наоборот: если делителей оказалось четыре, как у 91 (1, 7, 13, 91), то число составное, и список это доказывает.
Почему у полного квадрата делителей нечётное число?
Потому что его средняя пара — это одно число дважды. Все остальные делители разбиваются на пары с разными половинами и дают чётный вклад, а квадратный корень оказывается партнёром самому себе и добавляет единицу. У 36 это 6 * 6, и страница печатает такую пару один раз: если напечатать её дважды, две строки начали бы расходиться в том, сколько всего делителей. Отсюда и правило: нечётное число делителей бывает только у полного квадрата.
Почему поиск останавливается на квадратном корне?
Потому что дальше искать нечего. Если d × e = n и при этом d больше квадратного корня из n, то e меньше него, а значит e уже было найдено, и пара с ним уже напечатана. Для 60 это означает семь проб вместо пятидесяти девяти, а для миллиона — тысячу вместо миллиона: число проб растёт как корень из ввода. Именно это правило делает страницу быстрой и оно же объясняет, почему пары выходят уже упорядоченными.
Показывает ли страница разложение на простые множители?
Нет, и разницу легко не заметить. В списке делителей 60 есть 2, 3 и 5, но страница нигде не говорит, что 60 = 2² × 3 × 5. Список делителей содержит кусочки разложения, но сам разложением не является. Практическая разница велика: объём работы здесь растёт как квадратный корень из числа, тогда как разложение на простые множители — задача по-настоящему трудная, и на ней держится вся современная криптография. Если нужны именно простые множители, это отдельный вопрос и отдельная страница.
Почему в выводе нет разделителей разрядов?
Потому что оба вывода — текстовые строки, и панель печатает их ровно в том виде, в каком их собрала программа: делитель-миллион выглядит как 1000000, а не как 1 000 000. Такова особенность именно этой страницы: её ответ — список, длина которого зависит от ввода, а числовой вывод потребовал бы фиксированного числа знаков после запятой, что для списка бессмысленно. В тексте самой страницы то же число записано по правилам русского языка — 1 000 000, — и это не противоречие: проза и машинная строка живут по разным правилам.

Источники

Похожие калькуляторы