![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Przyjaciele php.pl Postów: 1 467 Pomógł: 13 Dołączył: 22.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
temat wydzielony od: http://forum.php.pl/viewtopic.php?t=9078
Chodzi o sprawdzanie licz czy są pierwsze. Cytat Najprosciej (choc nie najwydajniej) sprawdzic podzielnosc liczby X przez wszystkie liczby calkowite od 2 do sqrt(X) (sqrt - pierwiastek kwadratowy). Jesli się przez ktorakolwiek z nich dzieli to nie jest to liczba pierwsza (wyjatkiem jest liczba 2, ktora jest liczba pierwsza). Najprościej jest podzielić przez wszystkie liczy pierwsze mniejsze od sqrt(X) i większe od 2.
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Teraz to sie nie popisales (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
W tej metodzie (typowy brute-force bez optymalizacji) masz N - 2 iteracji petli, a w metodzie z pierwiastkiem (ktora podalem na poczatku) jest juz sqrt(N) - 2 iteracji, roznica jest niebanalna, choc i tak obie metody sa wolne (dla duzych liczb). |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 21:20 |