Ivan Petrov
Знаток
(393)
8 лет назад
Вообще-то, найти количество делителей у числа легко! Оно находится следующим образом.
1. Нужно разбить натуральное число, у которого мы хотим найти делители, на простые множители (9=3*3).
2. Нужно умножить степени простых множителей друг на друга, прибавляя к ним по единице. Пример с числом 9:
9=3*3=3 во 2 степени.
Дальше, нужно умножить степени числа друг на друга, прибавляя по 1.
У нас всего 1 число (3 во второй степени). Прибавляем к степени 1, получаем число 3. Т. к. остальных степеней больше нет, ответ - 3 делителя.
Формула будет такова: (n1+1)*(n2+1)*(n3+1)...
Где n - степень числа k (Степень простого множителя), а числа после n - это просто нумерация степеней n чисел k.
Источник: Свои знания
Билл Гейтс
Ученик
(175)
10 лет назад
перебираешь все числа от 1 до квадратного корня из этого числа. Надо доказывать, почему до квадратного корня? НО если ты умная, все перебирать не будешь. Например, было бу глупо проверять, делится ли число 143 на 4 или 8, если на 2 оно не делится.
Niemand
Искусственный Интеллект
(210027)
10 лет назад
Ну почему ж.. . Именно подбором. Сначала ищем простые делители, для которых знаем признаки делимости: 2, 3, 5, 7 (трудный признак) , 11... С ростом делителей признаки делимости все сложнее и сложнее.
Вообще-то простые множители числа находить очень трудно, на этом основан один из способов шифрования. Берутся два ОЧЕНЬ БОЛЬШИХ простых числа (например, 200-значных) и перемножаются. Перемножить просто, а вот полученное число разложить на простые множители (если заранее их не знать) очень трудно. Только подбором.
Булатова Римма
Искусственный Интеллект
(126743)
10 лет назад
Нужно знать признаки делимости. Если знать признак делимости на 11, то сразу можно определить 143=11*13.
5684=2*2*7*7*29. Произведение любых чисел в любой комбинации будут делителями этого числа: 2; 4; 14; 28; 29; 49; 98 и т. д. Наверное только подбор - что еще поделаешь.