Senin, 25 Oktober 2010

Tugas Logika dan Algoritma Pertemuan 5

STRUKTUR LOOPING

1.      Jelaskan pengertian statement
  1. While… do… end while
Jawab :
Merupakan suatu perulangan penyeleksi kondisi yang digunakan agar program dapat menyeleksi kondisi, sehingga program dapat menentukan tindakan apa yang harus dikerjakan, tergantung dari kondisi yang diseleksi. Atau dengan kata lain merupakan aksi (runtunan aksi) akan dilaksanakan berulang kali selama kondisi bernilai true, jika false maka badan pengulangan tidak akan dilaksanakan yang berarti pengulangan selesai.

  1. Repeat … until
Jawab :
Digunakan untuk mengulang statement-statement atau blok statement sampai (until) kondisi yang diseleksi di until tidak terpenuhi.

  1. For… end for
Jawab :
Digunakan untuk menghasilkan pengulangan sejumlah yang telah ditentukan sebelumnya. Jumlah pengulangan diketahui atau dapat ditentukan sebelum eksekusi.

2.      Dari soal No.1 buat masing satu dari contoh algoritma dan flowchartnya
a.       While.. do… end while
Algoritma cetak angka :
{mencetak 1,2, …, 8 ke piranti keluaran}
Deklarasi :
  k : integer
Deskripsi :
  k ← 1             {inisiasi}
while k <= 8 do
  write (k)
  k ← k + 1
endwhile

b.      Repeat… until
Algorima hitung rata-rata :
{menghitung rata-rata N buah bilangan bulat yang dibaca dari piranti masukan}
Deklarasi :
  N : integer {jumlah data > 0}
  x : integer {bil. bulat yang dibaca dari papan kunci}
  k : integer {pencacah banyaknya pengulangan}
  jumlah : integer {pencatat jumlah nilai}
  rerata : integer {rata-rata nilai}
Deskripsi :
  read (N)
  jumlah ← 0
repeat
  read (x)
  jumlah ← jumlah + x
  k ← k + 1
until k > N
rerata ← jumlah/N
write (rerata)

c.       For.. end for
Algoritma cetak kalimat :
{mencetak kalimat “C++ dan pascal” sebanyak 5 kali ke piranti keluaran}
Deklarasi :
  k : integer
Deskripsi :
for ← k to 5 do
  write (‘C++ dan Pascal’)
endfor
3.   Dengan menggunakan perintah while… do… end while buatlah contoh algoritma dan flowchart nested loop.
Jawab :
Algoritma menghitung rata-rata nilai yang diinputkan sebanyak N kali
USES CRT;
VAR
   JData,
   J, N   : byte;
   TotN : integer;
   Rata  : real;
BEGIN
   TotN := 0; Rata:= 0; J:= 1;
   write (‘Jumlah Data :’); Readln (JData);
   while J <= J Data do
BEGIN
       write (‘Nilai ke ‘,J, ‘:’);
       readln(N);
       TotN :=TotN + N;
       inc(J);
   END;
   Rata :=TotN + N;
   write (‘Nilai Rata-rata : ‘, Rata :3:0);
END
 




4.   Dengan perintah for…end for, buatlah algoritma dan flowchart nested loop.
Jawab :
Algoritma mendapatkan nilai maksimal dari sejumlah nilai ujian
for i=1 → 10
input nilai [i]
end for
max ← nilai [1]
for j=2 → 10
if  (nilai[j] > max)
max = nilai[j]
endif
endfor
print max


Tidak ada komentar:

Poskan Komentar