Prime Sieve
Cari semua bilangan prima hingga batas tertentu menggunakan Sieve of Eratosthenes. Visualisasikan bilangan prima dalam grid.
Grid angka (bilangan prima disorot)
Disorot = bilangan prima
Bilangan prima
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
Tentang alat ini
Saringan bilangan prima adalah algoritma matematika yang secara efisien menemukan semua bilangan prima hingga batas yang ditentukan. Saringan Eratosthenes, yang dikembangkan lebih dari dua ribu tahun yang lalu, tetap menjadi salah satu metode tercepat untuk menghasilkan daftar bilangan prima dan digunakan secara luas dalam kriptografi, penelitian teori bilangan, dan pendidikan. Alat ini membawa algoritma klasik tersebut ke browser Anda, memungkinkan Anda menjelajahi distribusi dan sifat-sifat bilangan prima secara interaktif.
Untuk menggunakan alat ini, masukkan batas atas rentang pencarian Anda dan klik "Temukan Bilangan Prima". Alat ini akan segera menampilkan semua bilangan prima hingga batas tersebut dalam format kisi, sehingga mudah untuk memvisualisasikan frekuensi dan polanya. Kasus penggunaan umum mencakup memverifikasi bilangan prima untuk proyek pendidikan, menghasilkan bilangan prima untuk algoritma enkripsi, mempelajari celah antara bilangan prima berturut-turut, dan menjelajahi keingintahuan matematika tentang distribusi bilangan prima.
Saringan Eratosthenes bekerja dengan secara berulang menandai kelipatan setiap bilangan prima sebagai bilangan komposit, meninggalkan hanya bilangan prima yang tidak ditandai. Metode ini jauh lebih cepat daripada memeriksa setiap angka secara individual untuk pembagian. Untuk batas di bawah satu juta, perhitungan selesai hampir secara instan; batas yang lebih besar mungkin membutuhkan beberapa detik tergantung pada perangkat Anda. Alat ini sempurna untuk siswa, matematikawan, dan siapa pun yang penasaran dengan blok bangunan fundamental teori bilangan.
Pertanyaan yang Sering Diajukan
Implementasi Kode
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.