Tapis EratosthenesTapis Eratosthenes adalah suatu cara untuk menemukan semua bilangan prima di antara 1 dan suatu angka n. Tapis ini ditemukan oleh Eratosthenes, seorang ilmuwan Yunani kuno. Cara ini merupakan cara paling sederhana dan paling cepat untuk menemukan bilangan prima, sebelum Tapis Atkin ditemukan pada tahun 2004. Tapis Atkin merupakan cara yang lebih cepat namun lebih rumit dibandingkan dengan Tapis Eratosthenes. Langkah-langkah tapis EratosthenesMisalkan kita hendak menemukan semua bilangan prima di antara 1 sampai suatu bilangan bulat n.
Setelah selesai, semua bilangan di daftar B adalah bilangan prima. Tapis Eratosthenes dalam PemrogramanTapis Eratosthenes dapat dimanfaatkan dalam pemrograman. Sebuah program dapat menampilkan deretan bilangan prima yang ada di antara 1 sampai n dengan memanfaatkan ide tapis Eratosthenes. Berikut ini adalah sebuah potongan kode dalam bahasa pemrograman Java dan C yang mencetak bilangan prima di antara 1 sampai n=120. int n=120; //batas atas n dapat diganti dengan bilangan bulat lainnya boolean[] prima=new boolean[n+1]; for(int i=0; i<=n; i++) prima[i]=true; //set seluruh array menjadi true prima[0]=prima[1]=false; //0 dan 1 bukan bil. prima double akarN=Math.sqrt(n); //akar kuadrat dari n //coret bilangan yang bukan prima for(int i=2; i<=akarN; i++) { if (prima[i]) { for (int j=i*i; j<=n; j=j+i) prima[j]=false; } } //tampilkan seluruh bilangan prima for(int i=0; i<n; i++) { if (prima[i]) System.out.print(i+ "\t"); Pranala luar
|