Jawab :
- bilangan prima hanya akan habis bila dibagi 1 dan bilangan itu sendiri.
- sehingga pasti akan ada sisa hasil bagi (mod) jika dibagi bilangan lebih dari 1 (kecuali 2) sampai bilangan sebelum bilangan itu (x-1).
- mencetak 2 terlebih dahulu ke layar.
- mengeset status bilangan prima menjadi true.
- beri nilai =1 (menandakan bilangan prima).
- melakukan pengecekan mulai dari 2 sampai x-1.
- jika x habis dibagi bilangan yang ada antara 2 sampai x-1, berarti x bukan bilangan prima. Variabel prima yang awalnya true berubah jadi false dan pengecekan tidak perlu dilanjutkan (break).
- jika dari bilangan antara 2 sampai x-1 tak satupun yang habis dibagi, maka variabel prima yang dideklarasikan sebagai true tidak berubah nilai (tetap true). Sehingga bilangan tersebut adalah bilangan prima dan akan ditampilkan ke layar.
- tambahkan nilai x dengan 1 dan ulangi dari langkah ke-5 sampai nilai x= 20
    uses crt;
    var x,y:  integer;
    prima: boolean;
    begin
      clrscr;
      write('2':4);
      for x := 3 to 20 do
      begin
      prima:=true;
      for y := 2 to x-1 do
      begin
      if (x mod y) = 0 then
      begin
      prima := false;
      break;
      end;
      end;
       if prima then write(x:4);
      end;
    Readln;
    end.
 
Tidak ada komentar:
Posting Komentar