190 likes | 525 Views
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.
E N D
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 (nestedlooping).
For-do positip • Syntax : for variabel := nilai_awal to nilai_akhir do begin blok_statemen; end; • Keterangan : • Variabel, nilai_awal, nilai_akhir bertipe ordinal • Nilai_awal < nilai_akhir • Blok_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 do begin blok_statemen; end; • Keterangan : • Variabel, nilai_awal, nilai_akhir bertipe ordinal • Nilai_awal > nilai_akhir • Blok_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 do begin {blok_statemen1;} for var2 := awal2 to akhir2 do begin blok_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 do Begin for k := 6 to 10 do begin writeln(‘BELAJAR’); end; writeln(‘KAMU AKAN SUKSES’); end;
Buatlah algoritma, flowchart, dan program untuk menampilkan semua bilangan asli kelipatan 4 yang kurang dari atau sama dengan 20, serta menghitung jumlahnya !. mulai Algoritma : Jumlah := 0 1. Jumlah 0 2 . For n := 1 to 5 For n := 1 to 5 3. Y 4 * n 4. Jumlah Jumlah + Y Y := 4*n Jumlah := Jumlah + Y 5. Output Y Y 6. Kembali ke 2 7. Output Jumlah Next n jumlah selesai
Uses crt; Var n, Y, Jumlah : byte; Begin textbackground(blue); clrscr; textcolor(yellow); writeln(‘BILANGAN ASLI KELIPATAN EMPAT DAN JUMLAHNYA’); Jumlah := 0; for n := 1 to 5 do begin 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 do Begin 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 ? Syarat_kondisi N := 1; While N <= 10 do Begin writeln(‘SAYA BELAJAR TURBO PASCAL’); N := N + 0.5; end; Nilai awal Penghitung (counter)
Uses crt; Var n, Y, Jumlah : byte; Begin textbackground(blue); clrscr; textcolor(yellow); writeln(‘BILANGAN ASLI KELIPATAN EMPAT DAN JUMLAHNYA’); Jumlah := 0; for n := 1 to 5 do begin 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; Begin textbackground(blue); clrscr; textcolor(yellow); writeln(‘BILANGAN ASLI KELIPATAN EMPAT DAN JUMLAHNYA’); Jumlah := 0; n : = 1; while n <= 5 do begin 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; Begin textbackground(blue); clrscr; textcolor(yellow); writeln(‘BILANGAN ASLI KELIPATAN EMPAT DAN JUMLAHNYA’); Jumlah := 0; for n := 1 to 5 do begin 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?