Это программа для поиска простых коэффициентов чисел.Как найти простые множители в диапазоне в php
Как - Prime факторы для числа 1125 являются 3
и 5
Мой Algo это идет путь - (и, пожалуйста, дайте мне знать, если это не правильно)
- Во-первых, я найти квадратный корень от числа, использующего функцию
sqrt()
, чтобы разрушить сложность и время выполнения. - Чтобы найти простые числа между диапазонами.
- Наконец, чтобы разделить эти простые числа с оригинальным номером (еще не дошел до этой стадии, как неудача на втором этапе.
Моего код, который не работает, дайте мне знать, где именно я терплю неудачу в моем логика и код, начиная с шага 2 и шага 3.
ошибки не выброшен, но код также ничего не выводит.
<?php
error_reporting(E_ALL);
$number = 6006;
$sqrt_num = (int)sqrt($number);
for($i=2;$i<$sqrt_num;$i++)
{
for($j=2;$j<=$i-1;$j++)
{
if($i%$j==0)
break;
if($i==$j)
echo $i;
}
}
http://stackoverflow.com/a/14037923/1270996 Возможный дубликат –
Во-первых, по логике вещей, вы не проверки простых чисел, вы проверяете «делится на», во-вторых, вы 'break' из цикла, а не' continue' на следующую итерацию. Взгляните на: http://www.thatsgeeky.com/2011/03/prime-factoring-with-php/ – Jon
Вы можете найти свое решение здесь: http://stackoverflow.com/questions/14037688/find-the-maximum-prime-number-in-a-given-range – xubi