Algorytm Pythona Prime Checker
Sprawdź, czy liczba jest liczbą pierwszą, używając Pythona. Uruchom nasz interaktywny algorytm, aby zobaczyć wydajną iterację matematyczną i ocenę pierwiastka.
Przegląd
Liczba pierwsza to dodatnia liczba całkowita większa od 1, która nie ma żadnych dodatnich dzielników innych niż 1 i ona sama.
Najbardziej nieefektywnym sposobem sprawdzenia liczby pierwszej jest iteracja w górę do samej liczby. Skuteczną optymalizacją jest sprawdzanie podzielności tylko do pierwiastka kwadratowego liczby.
Dane wyjściowe kodu i wykonania
Efektywny algorytm sprawdzania liczb pierwszych demonstrujący optymalizację O(sqrt(n)).
import math
def is_prime(n):
if n <= 1:
return False
if n == 2:
return True
if n % 2 == 0:
return False
max_divisor = math.isqrt(n)
for i in range(3, max_divisor + 1, 2):
if n % i == 0:
return False
return True
test_numbers = [2, 10, 17, 25, 97]
for num in test_numbers:
status = "Prime" if is_prime(num) else "Not Prime"
print(f"{num:2d} -> {status}") 2 -> Prime
10 -> Not Prime
17 -> Prime
25 -> Not Prime
97 -> PrimeWdrażanie krok po kroku
- Algorytmy kryptograficzne i haszujące
- Matematyka edukacyjna i teoria sita
- Weryfikacja backendu dla bezpiecznych kluczy
Często zadawane pytania
Po co sprawdzać tylko do pierwiastka kwadratowego?
Jeśli $n = a \times b$, to co najmniej jeden z czynników ($a$ lub $b$) musi być mniejszy lub równy pierwiastkowi kwadratowemu z $n$. Zatem sprawdzanie wyższych wartości jest zbędne.
Powiązane tematy
Uruchom i zrozum ciąg Fibonacciego w Pythonie. Ten interaktywny przykład kodu pokazuje iteracyjne i rekurencyjne podejście do generowania liczb Fibonacciego.
Algorytmy sortowania w PythoniePoznaj algorytmy sortowania w Pythonie. Wizualizuj sortowanie bąbelkowe i sortowanie przez scalanie natywnie w kontekście IDE przeglądarki.