Post on 10-Jan-2016
description
LOOPING / PERULANGAN
• FOR - DO
• WHILE - DO
• REPEAT - UNTIL
Dalam pemrograman, yang diulangi (berkali-kali) dapat berupa :
1. Bagian input
2. Bagian proses
3. Bagian output
4. Kombinasi di antara 1, 2, dan 3 di atas.
For - Do
• Digunakan jika banyaknya perulangan sudah pasti.
• Selalu ada nilai_awal dan nilai_akhir.• Variabel penghitung (counter) bertipe
ordinal.• Dapat muncul dalam bentuk :
– Perulangan positip– Perulangan negatif– Perulangan tersarang (nested looping).
For-do positip• Syntax :
for variabel := nilai_awal to nilai_akhir dobegin
blok_statemen;end;
• Keterangan :Variabel, nilai_awal, nilai_akhir bertipe ordinalNilai_awal < nilai_akhirBlok_statemen; bagian yang diulangi (sebanyak nilai
awal sampai nilai akhir).
Contoh : Jika ingin menampilkan teks “SAYA BELAJAR TURBO PASCAL” sebanyak 17 kali, bagian looping permograman cukup ditulis perintah sebagai berikut :
For n := 1 to 17 do
Begin
writeln(‘SAYA BELAJAR TURBO PASCAL’);
end;
For-do negatip• Syntax :
for variabel := nilai_awal downto nilai_akhir dobegin
blok_statemen;end;
• Keterangan :Variabel, nilai_awal, nilai_akhir bertipe ordinalNilai_awal > nilai_akhirBlok_statemen; bagian yang diulangi (sebanyak nilai
awal sampai nilai akhir).
Contoh : Jika ingin menampilkan teks “SAYA BELAJAR TURBO PASCAL” sebanyak 17 kali, bagian looping permograman cukup ditulis perintah sebagai berikut :
For n := 17 downto 1 do
Begin
writeln(‘SAYA BELAJAR TURBO PASCAL’);
end;
For-do tersarang• Syntax :
for var1 := awal1 to akhir1 dobegin
{blok_statemen1;}for var2 := awal2 to akhir2 do
beginblok_statemen2;
end;{blok_statemen3;}
end;
• Keterangan : Blok_statemen1 dan blok_statemen3 (jika ada), akan diproses
sebanyak anggota awal1 sampai akhir1. setiap satu nilai dari var1, blok_statemen2 akan diproses sebanyak
anggota awal2 sampai akhir2.
Apa hasilnya jika dieksekusi ?
For m := 2 to 4 doBegin
for k := 6 to 10 dobegin
writeln(‘BELAJAR’);end;writeln(‘KAMU AKAN SUKSES’);
end;
Buatlah algoritma, flowchart, dan program untuk menampilkan semuabilangan asli kelipatan 4 yang kurang dari atau sama dengan 20, serta menghitung jumlahnya !.
Algoritma :
1. Jumlah 0
2 . For n := 1 to 5
3. Y 4 * n
4. Jumlah Jumlah + Y
5. Output Y
6. Kembali ke 2
7. Output Jumlah
mulai
Jumlah := 0
For n := 1 to 5
Y := 4*nJumlah := Jumlah + Y
Y
Next n
jumlah
selesai
Uses crt;Var n, Y, Jumlah : byte;
Begintextbackground(blue); clrscr;textcolor(yellow);
writeln(‘BILANGAN ASLI KELIPATAN EMPAT DAN JUMLAHNYA’);Jumlah := 0;for n := 1 to 5 dobegin
Y := 4*n;jumlah := jumlah + Y;writeln(Y);
end;Write(‘Jumlah bilangan-bilangan tersebut adalah = ‘ , jumlah);readln;
End.
While-do
• Dapat dipakai baik untuk perulangan yang sudah pasti maupun yang belum pasti.
• yang pasti harus ada : KRITERIA UNTUK BERHENTI dari proses perulangan.
• Kriteria untuk berhenti tersebut bertipe boolean. Jika bernilai true proses berlangsung, jika bernilai false proses berhenti.
• Dapat juga muncul secara tersarang (nested).• Dimungkinkan tidak pernah ada proses.
Syntax :
While syarat_kondisi doBegin
blok_statemen;End;
Keterangan :
1. syarat_kondisi bertipe boolean
2. Jika syarat_kondisi bernilai true, maka blok_statemen dikerjakan; sebaliknya jika syarat_kondisi bernilai false, maka blok_statemen tidak dikerjakan.
3. Proses perulangan berhenti jika syarat_kondisi sudah bernilai false.
Apakah hasilnya jika dieksekusi ?
N := 1;While N <= 10 doBegin
writeln(‘SAYA BELAJAR TURBO PASCAL’);N := N + 0.5;
end;
Nilai awal Penghitung (counter)
Syarat_kondisi
Uses crt;Var n, Y, Jumlah : byte;
Begintextbackground(blue); clrscr;textcolor(yellow);
writeln(‘BILANGAN ASLI KELIPATAN EMPAT DAN JUMLAHNYA’);Jumlah := 0;for n := 1 to 5 dobegin
Y := 4*n;jumlah := jumlah + Y;writeln(Y);
end;Write(‘Jumlah bilangan-bilangan tersebut adalah = ‘ , jumlah);readln;
End.
Bagaimana jika ditulis dengan statemen while-do ?
Uses crt;Var n, Y, Jumlah : byte;
Begintextbackground(blue); clrscr;textcolor(yellow);
writeln(‘BILANGAN ASLI KELIPATAN EMPAT DAN JUMLAHNYA’);Jumlah := 0;n : = 1;while n <= 5 dobegin
Y := 4*n;jumlah := jumlah + Y;writeln(Y);n := n + 1;
end;Write(‘Jumlah bilangan-bilangan tersebut adalah = ‘ , jumlah);readln;
End.
Repeat-Until
• Dapat dipakai baik untuk perulangan yang sudah pasti maupun yang belum pasti.
• yang pasti harus ada : KRITERIA UNTUK BERHENTI dari proses perulangan.
• Kriteria untuk berhenti tersebut bertipe boolean. Jika masih bernilai false proses berlangsung, jika sudah bernilai true proses berhenti.
• Dapat juga muncul secara tersarang (nested).• Minimum ada satu kali proses.
Syntax :
Repeat blok_statemen;
Until syarat_kondisi;
Keterangan :
1. syarat_kondisi bertipe boolean
2. Jika syarat_kondisi bernilai false, maka blok_statemen dikerjakan; sebaliknya jika syarat_kondisi sudah bernilai true, maka blok_statemen tidak dikerjakan.
3. Proses perulangan berhenti jika syarat_kondisi sudah bernilai true.
Apakah hasilnya jika dieksekusi ?
N := 1;Repeat
writeln(‘SAYA BELAJAR TURBO PASCAL’);N := N + 0.5;
Until N > 10 ;
Nilai awal Penghitung (counter)
Syarat_kondisi
Uses crt;Var n, Y, Jumlah : byte;
Begintextbackground(blue); clrscr;textcolor(yellow);
writeln(‘BILANGAN ASLI KELIPATAN EMPAT DAN JUMLAHNYA’);Jumlah := 0;for n := 1 to 5 dobegin
Y := 4*n;jumlah := jumlah + Y;writeln(Y);
end;Write(‘Jumlah bilangan-bilangan tersebut adalah = ‘ , jumlah);readln;
End.
Bagaimana jika ditulis dengan statemen Repeat-Until?