Selasa, 19 Oktober 2010

Teori Algoritma & Pemrograman (Bag.2)

NIM      : 21015029
NAMA  : RIZKI LAMOLA
KELAS : 1-MISI-02

Buatlah Algoritma kemudian terjemahkan ke dalam bahasa pemrograman pascal 

4. Menampilkan bilangan kelipatan tiga dari angka 1 s/d 20
5. Menampilkan bilangan ganjil dari angka 1 s/d 100
6. Menampilkan bilangan genap dari angka 1 s/d 50
7. Menampilkan bilangan prima dari angka 1 s/d 20
8. Menampilkan bilangan kelipatan 3 dan kelipatan 5 dari angka 1 s/d 30

Penyelesaian:

4. Algoritmanya:
  1. Beri nilai awal A=3
  2. untuk I=1 sampai 6 lakukan
          - cetak A
          - Hitung A=A+3

          Program pascal:

program_1

layout


5. Algoritmanya:
  1. Beri nilai awal A=1
  2. untuk I=1 sampai 50 lakukan
          - cetak A
          - Hitung A=A+2

          Program pascal:
program_2
layout

6. Algoritmanya:
  1. Beri nilai awal A=2
  2. untuk I=1 sampai 25  lakukan
          - cetak A
          - Hitung A=A+2
   
          Program Pascal:


program_3

layout


7.Algoritma untuk menampilkan bilangan prima dari 1 s/d 20:
    Cara pertama menggunakan variabel bertipe boolean (true/false):
  1. bilangan prima hanya akan habis bila dibagi 1 dan bilangan itu sendiri.
  2. sehingga pasti akan ada sisa hasil bagi (mod) jika dibagi bilangan lebih dari 1 sampai bilangan sebelum bilangan itu (x-1).
  3. untuk nilai x= 2 sampai 20 lakukan:
    • mengeset status bilangan prima menjadi true.
    • 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.
    • ulangi lagi dari point 4 hingga nilai x = 20.
     Program pascal:
 
uses crt;
var x,y: integer;
    prima: boolean;
begin
  clrscr;
  for x:= 2 to 20 do
   begin
     prima:= true;
     for j:= 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.

Cara kedua menyeleksi jumlah nol dari sisa bagi:
  1. Telah kita ketahui bahwa bilangan prima hanya akan memiliki sisa bagi= 0 ketika dibagi dengan angka 1 dan bilangan itu sendiri.
  2. Berarti jika bilangan prima dibagi dengan bilangan berapapun hanya memiliki 2 kesempatan mendapatkan sisa bagi=0.
  3. Ketika jumlah sisa bagi=0 lebih dari 2  berarti bilangan tersebut bukan bilangan prima, tidak ditampilkan ke layar.
     Program pascal:
 
uses crt;
var i,j, jumlahnol: integer;
begin
  clrscr;
  for i := 1 to 20 do
   begin
     jumlahnol:= 0;
     for j:= 1 to i do
      begin
        if i mod j = 0 then
        jumlahnol:= jumlahnol+1;
      end;
     if jumlahnol = 2 then
     write(i:4);
    end;
  readln
end.
menampilkan bilangan prima


8. Algoritma untuk menampilkan bilangan kelipatan 3 dan kelipatan 5 dari
    angka 1 s/d 30:
  • Untuk i:= 1 sampai 30 lakukan:
    • jika (i mod 3= 0) dan (i mod 5 =0)
    • maka cetak i.
     Program pascal:

uses crt;
var i: byte;
begin
  for i:= 1 to 30 do
   if (i mod 3=0) and (i mod 5=0)
   then write(i:4);
  readln
end.
menampilkan bilangan kelipatan 3 dan kelipatan 5.

Tidak ada komentar:

Posting Komentar

Twitter Delicious Facebook Digg Stumbleupon Favorites More