Minggu, 26 Agustus 2012

Algoritma Bilangan Prima

Dalam matematika, bilangan prima adalah bilangan asli yang lebih besar dari 1, yang faktor pembaginya adalah 1 dan bilangan itu sendiri.(Wikipedia)
Bagaimana cara mengecek bahwa bilangan tersebut adalah prima? Banyak algoritma yang ditawarkan untuk mengecek apakah bilangan itu adalah prima. salah satunya saya sudah buat dalam bahasa Java sebuah fungsi berikut:

boolean Prime(int m){
    
        int count=0;
        for(int i=1; i<=m; i++){
        
            if(m % i == 0){
                count++;
                if(count > 2){
                     break;
                }

            }
                    
        }
        if(count==2){
        
            return true;
        }
        else
            return false;
    
    }

seperti kita ketahui bahwa bilangan prima memiliki dua faktor pembagi yaitu 1 dan bilangan itu sendiri, jadi fungsi di atas akan melihat apakah ada bilangan yang lebih kecil dari bilangan yang dicari dapat membagi bilangan yang dicari tersebut jika hanya dua bilangan pembaginya maka bilangan tersebut adalah bilangan prima. Namun, dalam dunia programming ada yang namanya keefektifan suatu program dapat berjalan membutuhkan waktu yang singkat, setelah saya perhatikan fungsi yang saya buat jika digunakan untuk mengecek bilangan milyaran juta apakah prima maka akan dicek dari 1 sampai bilangan milayaran juta - 1 untuk mengetahui bilangan itu prima atau tidak, ini yang membuat tidak efektif, oleh karena itu diperlukan algoritma yang lebih efektif.
Ada yang tahu, bagaimana cara mengecek apakah suatu bilangan itu prima atau bukan dan lebih efektif?

Tidak ada komentar:

Posting Komentar

Mari kita biasakan untuk tidak COPAS, dan tinggalkan komentar untuk blog ini. Terima kasih