ФорумПрограммированиеPHP для идиотов → Функция проверки простых чисел

Функция проверки простых чисел

  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz Дек. 2, 2009, 5:03 п.п.


    function is_prime ($n)
    {
    for($x=2; $x <= sqrt($n); $x++) {
    if($n % $x == 0) {
    return false;
    }
    }
    return true;
    }


    юзать так:

    $list = range(1,100);
    foreach($list as $l) {
       var_dump($l, is_prime($l));
    }

    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz Дек. 2, 2009, 5:22 п.п., спустя 18 минут 45 секунд

    напомнил бы еще какое число называть простым, а то вышка все мозги высушила в свое время.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Дек. 2, 2009, 5:23 п.п., спустя 1 минуту 7 секунд


    напомнил бы еще какое число называть простым, а то вышка все мозги высушила в свое время.
    простое - которое делится на себя и на 1, и больше не имеет делителей.

    ы: видимо вовремя вышку нахуй отправил )))))
    Сапожник без сапог
  • eudj1n

    Сообщения: 11 Репутация: N Группа: Кто попало

    Spritz Дек. 14, 2009, 8:26 п.п., спустя 12 дней 3 часа 3 минуты

    а чем Вас такой вариант не устраивает?

    // definitely not a prime
    echo gmp_prob_prime("6") . "\n";

    // probably a prime
    echo gmp_prob_prime("1111111111111111111") . "\n";

    // definitely a prime
    echo gmp_prob_prime("11") . "\n";
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Дек. 14, 2009, 8:42 п.п., спустя 15 минут 52 секунды


    а чем Вас такой вариант не устраивает?

    // definitely not a prime
    echo gmp_prob_prime("6") . "\n";

    // probably a prime
    echo gmp_prob_prime("1111111111111111111") . "\n";

    // definitely a prime
    echo gmp_prob_prime("11") . "\n";

    тем что я уже написал на c# без лишней ебли и на всю жизнь запомнил, что бинарные операции - не для пхп. ебаля в рот библиотеки дополнительно ставить чтобы посчитать сдвиг 8 бит :)
    Сапожник без сапог
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz Дек. 14, 2009, 8:56 п.п., спустя 14 минут 32 секунды

    eudj1n, потомучто тут алгоритм скрыт, я именно из-за алгоритма выкладывал, чтобы наглядно показать
    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Дек. 14, 2009, 8:58 п.п., спустя 2 минуты


    eudj1n, потомучто тут алгоритм скрыт, я именно из-за алгоритма выкладывал, чтобы наглядно показать
    бля, прошу прощения, я не в той теме написал :-D

    я думал это моя тема про бинарные операции, там просто тоже приводились примеры про gmp_* ))
    Сапожник без сапог
  • eudj1n

    Сообщения: 11 Репутация: N Группа: Кто попало

    Spritz Дек. 15, 2009, 2:27 п.п., спустя 17 часов 28 минут 48 секунд


    eudj1n, потомучто тут алгоритм скрыт, я именно из-за алгоритма выкладывал, чтобы наглядно показать

    Как показывает практика, для работы с большим количество простых чисел больше подходит вариант с gmp (например, нахождение первого миллиона простых чисел).
    А для простой проверки, согласен, Ваш вариант подходит отлично.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Дек. 15, 2009, 2:30 п.п., спустя 2 минуты 39 секунд

    eudj1n, а почему бы не на си решить эту задачу? ведь практичнее будет явно?
    Сапожник без сапог
  • eudj1n

    Сообщения: 11 Репутация: N Группа: Кто попало

    Spritz Дек. 15, 2009, 2:39 п.п., спустя 9 минут 2 секунды

    В моем случае, смысла писать на си не было.
    Но понял одно - с большими числами стандартными функциями пхп пользоваться не стоит :)
  • Trej Gun

    Сообщения: 5305 Репутация: N Группа: в ухо

    Spritz Дек. 15, 2009, 2:40 п.п., спустя 1 минуту 32 секунды

    пхп пользоваться не стоит

    +1
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Дек. 15, 2009, 2:41 п.п., спустя 28 секунд


    пхп пользоваться не стоит

    +1
    +1
    Сапожник без сапог
  • eudj1n

    Сообщения: 11 Репутация: N Группа: Кто попало

    Spritz Дек. 15, 2009, 2:42 п.п., спустя 47 секунд



    пхп пользоваться не стоит

    +1
    +1


    а приходится
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Дек. 15, 2009, 2:44 п.п., спустя 1 минуту 51 секунду


    В моем случае, смысла писать на си не было.
    Но понял одно - с большими числами стандартными функциями пхп пользоваться не стоит :)
    я вот тоже понял это.
    Спустя 99 сек.



    пхп пользоваться не стоит

    +1
    +1


    а приходится
    почему приходится? есть же много других языков не чуть не хуже чем пхп :)

    питон, ява, перл (буэээ :))) ), .net (его бы я на первое место поставил) и технологии типа jsp, asp.net ! которые в разы упрощают обычные задачи, пхп просто "все привыкли жрать" … и слишком много в нем сделано, чтобы взять и перепрыгнуть на другой язык… тут какбы, плачут, но тянут эту телегу :(
    Сапожник без сапог
  • eudj1n

    Сообщения: 11 Репутация: N Группа: Кто попало

    Spritz Дек. 15, 2009, 2:48 п.п., спустя 4 минуты 43 секунды


    почему приходится? есть же много других языков не чуть не хуже чем пхп :)

    питон, ява, перл (буэээ :))) ), .net (его бы я на первое место поставил) и технологии типа jsp, asp.net ! которые в разы упрощают обычные задачи, пхп просто "все привыкли жрать" … и слишком много в нем сделано, чтобы взять и перепрыгнуть на другой язык… тут какбы, плачут, но тянут эту телегу :(


    пхп не так безнадежен :)
    и, между прочем, в моей стране в корпсекторе он не на последнем месте.
    питон - да, в GAE проектом одним занимаюсь, ява - хз, не мое, технологии от МС тоже не по душе.

Пожалуйста, авторизуйтесь, чтобы написать комментарий!