Prime Sieve
Eratosthenes Kalburundan yararlanarak belirli bir limite kadar tüm asal sayıları bulun; asalları bir ızgarada görselleştirin.
Sayı ızgarası (asallar vurgulanmış)
Vurgulanan = asal sayı
Asal sayılar
2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97
Bu araç hakkında
Asal sayı kalburu, belirtilen bir sınıra kadar tüm asal sayıları verimli bir şekilde bulan bir matematiksel algoritmadır. İkiyüz yıl önce geliştirilen Eratosthenes kalburu, asal sayı listeleri oluşturmanın en hızlı yöntemlerinden biri olmaya devam etmektedir ve kriptografi, sayı teorisi araştırması ve eğitimde yaygın olarak kullanılmaktadır. Bu araç, o klasik algoritmayı tarayıcınıza getirir ve asal sayıların dağılımını ve özelliklerini etkileşimli olarak keşfetmenize olanak sağlar.
Bu aracı kullanmak için, arama aralığının üst sınırını girin ve "Asal Sayıları Bul"a tıklayın. Araç, o sınıra kadar olan tüm asal sayıları anlık olarak bir ızgara formatında görüntüleyecek ve bunların frekansını ve düzenini görselleştirmeyi kolaylaştıracaktır. Yaygın kullanım durumları arasında eğitim projeleri için asal sayıları doğrulama, şifreleme algoritmaları için asal sayılar oluşturma, ardışık asal sayılar arasındaki boşlukları inceleme ve asal sayı dağılımı hakkında matematiksel merakı keşfetme yer almaktadır.
Eratosthenes kalburu, her asal sayının katlarını yinelemeli olarak bileşik olarak işaretleyerek ve yalnızca işaretlenmemiş asal sayıları bırakarak çalışır. Bu yöntem, her bir sayıyı bölünebilirlik açısından ayrı ayrı kontrol etmekten çok daha hızlıdır. Bir milyonun altındaki sınırlar için hesaplama neredeyse anlık olarak tamamlanır; daha büyük sınırlar, cihazınıza bağlı olarak birkaç saniye sürebilir. Bu araç, öğrenciler, matematikçiler ve sayı teorisinin temel yapı taşlarına meraklı olan herkes için mükemmeldir.
Sıkça Sorulan Sorular
Kod Uygulaması
def sieve_of_eratosthenes(limit: int) -> list[int]:
"""Return list of all primes up to limit."""
if limit < 2:
return []
is_prime = [True] * (limit + 1)
is_prime[0] = is_prime[1] = False
i = 2
while i * i <= limit:
if is_prime[i]:
for j in range(i * i, limit + 1, i):
is_prime[j] = False
i += 1
return [n for n, p in enumerate(is_prime) if p]
primes = sieve_of_eratosthenes(100)
print(primes)
# [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, ...]
print(f"Count: {len(primes)}") # Count: 25Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.