Rabu, 13 Januari 2010

Algoritma Bilangan Prima dengan Pascal

Bilanga prima adalah bilangan asli yang hanya memiliki dua faktor pembagi, yaitu 1 dan bilangan itu sendiri. Sepuluh bilangan prima pertama adalah deratan bilangan berikut: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29.

Di bawah ini adalah contoh program Pascal yang bisa menampilkan bilangan prima sampai dengan N bilangan yang diinginkan.Untuk menentukan keprimaan suatu bilangan X, algoritma ini bekerja dengan membagi bilangan X tersebut dengan bilangan 3 sampai dengan bilangan X - 1. Tentu saja algoritma ini sangat tidak efisien jika dibandingkan metode primality testing lain yang lebih advanced seperti Miller-Rabin Primality Testing atau Fermat Primality Testing.

program bilangan_prima;
var
 i : integer;
 bil : integer;
 n : integer;
 counter : integer;
 kondisi : boolean;
BEGIN
 writeln('program bilangan prima sampai bilangan ke-n');
 write('sampai berapa bilangan? '); read(n);
 
 bil := 2;
 counter := 0;
 
 repeat
  kondisi := true;
  begin
   if bil = 2 then
    { do nothing }
   else
   begin
    for i := 2 to bil - 1 do
    begin
     if bil mod i = 0 then
     begin
      kondisi := false;
      break;
     end;
    end;
   end;

   if kondisi then
   begin
    writeln(bil);
    counter := counter + 1;
   end;

   bil := bil + 1;
  end;
 until counter = n;
END.

Source code di atas bisa didownload secara gratis di sini.
Happy coding! :)

Tidak ada komentar:

Posting Komentar