Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Найти натуральное число из интервала от a до b, у которого количество делителей максимально.

Cherry Cola Профи (749), на голосовании 3 года назад
Найти натуральное число из интервала от a до b, у которого количество делителей максимально. Если таких чисел несколько, то должно быть найдено максимальное из них.
Голосование за лучший ответ
꧁Ṧ̟͆͞ǿ̱ͯ͘ℓ̧͕͊ù͙͗́ţ̺̊̕ĩ̫̔̕ǿ̺́͟ñ͔̾́꧂ Гуру (4498) 3 года назад
<?php
// Числа
$num_a = 14;
$num_b = 128;

$del_max = 0;
$del_max2 = 0;
$del_max_num = 0;

// Цикл (перебираем числа в диапазоне от a до b)
for($i = $num_a; $i < $num_b; $i++)
{
// Цикл в котором будем делить
for($a = 1; $a <= $num_b; $a++)
{
// Если число делится на другое число, увеличить количество максимальных делителей для числа
if($i % $a == 0)
{
$del_max++;
}
}

// Если количество делителей этого числа больше, чем прошлого, сохранить это число и кол-во его делителей
if($del_max > $del_max2)
{
$del_max2 = $del_max;
$del_max_num = $i;
}
// Обнуляем
$del_max = 0;
}

echo "У числа $del_max_num делителей $del_max2. Это максимальное значение
";
?>
Cherry ColaПрофи (749) 3 года назад
А как сделать тоже самое, но с минимальным значением?
Похожие вопросы