Pernyataan berulang menyebabkan satu atau lebih pernyataan diproses ulang. Dalam pascal ada 3 pernyataan berulang yaitu:
Sebelum membahas lebih lanjut tentang pernyataan berulang, kita bahas dulu tentang pernyataan jamak (majemuk). Yang dimaksud pernyataan jamak adalah kelompok pernyataan, setiap pernyataan dipisahkan dengan tanda titik koma (;). Begin dan end mengelompokkan pernyataan jamak menjadi satu unit. Anda dapat menempatkan pernyataan jamak dimana saja di dalam program seperti anda meletakkan pernyataan biasa (tunggal) di dalam program. Diagram alir pernyataan jamak diperlihatkan pada Gambar berikut.
Kita kembali ke pernyataan berulang yaitu pernyataan while-do
Pernyataan while-do atau lebih sederhananya dikenal sebagai pernyataan while mengeksekusi pernyataan lain selama beberapa kondisi bemilai true. Disajikan diagram alit pernyataan berulang while.
Jalankan program ini! Berapa kali kata Amik, Sinar Nusantara dan Solo dicetak?
Ket: Untuk menghentikan proses berulang secara terus-menerus
tekan : Ctrl+break.
Kemudian ubahlah program tersebut menjadi:
Jalankan program ini! Berapa kali kata Amik, Sinar Nusantara dan Solo dicetak?
Kemudian ubah lagi program tersebut menjadi:
Sekarang jalankan lagi program ini! Berapa kali kata Amik, Sinar Nusantara dan Solo dicetak? Jika ada perbedaan diskusikan dengan teman anda apa penyebabnya!
Kemudian ubah lagi program tersebut menjadi:
Sekarang jalankan lagi program ini! Berapa kali kata Amik, Sinar Nusantara dan Solo dicetak? Jika ada perbedaan diskusikan dengan ternan anda apa penyebabnya!
ubahlah program tersebut agar kata Solo jugs dicetak berulang! Bagaimana hasilnya (ada perbedaan atau tidak) jika pernyataan k:=k+1, ditempatkan sebelum pernyataan Writeln('Amik'); atau ditempatkan setelah Writeln(`Sinar Nusantara'); (sebelum end;).
Kemudian kondisi k<10 anda ubah menjadi k>10, lalu jalankan perhatikan hasilnya. Jika ada perbedaan diskusikan dengan teman anda! Demikian juga ubahlah kondisinya menjadi k<=10 dan k>=10, kemudian jalankan, perhatikan perbedaannya. Ubah lagi program 3.1. yang terakhir menjadi sebagai berikut:
Jalankan dan perhatikan perbedaan jumlab putarannya!
Program Putaran while-do dengan boolean
Sekarang jalankan lagi program 3.2. ini! Berapa kali kata Amik, Sinar Nusantara dan Solo dicetak?
Bagaimana hasilnya (ada perbedaan atau tidak) jika pernyataan benar:=(k>10); ditempatkan sebelum pernyataan WritelneAmik'); atau ditempatkan setelah Writeln ('Sinar Nusantara'); (sebelum =tit). Tebak dulu hasilnya, sebelum menjalankan programnya!
Jika ada perbedaan diskusikan dengan teman ands apa penyebabnya!
Program Putaran while-do dengan tipe karakter.
Jalankan program ini, lalu ubah program 3.3. sehingga mencetak mulai dari 'Z' sampai 'A'.
Program Putaran while-do dengan kondisi jamak kondisi).
Jalankan program 3.4. ini, kemudian ubahlah kondisinya dan operator and secara bergantian menjadi or dan xor. Buat dengan 3 kondisi (campuran operator not, and, or dan xor), jika kesulitan diskusikan dengan teman anda.
- Pernyataan while-do (pernyataan while)
- Pernyataan repeat-until
- Pernyataan for
Sebelum membahas lebih lanjut tentang pernyataan berulang, kita bahas dulu tentang pernyataan jamak (majemuk). Yang dimaksud pernyataan jamak adalah kelompok pernyataan, setiap pernyataan dipisahkan dengan tanda titik koma (;). Begin dan end mengelompokkan pernyataan jamak menjadi satu unit. Anda dapat menempatkan pernyataan jamak dimana saja di dalam program seperti anda meletakkan pernyataan biasa (tunggal) di dalam program. Diagram alir pernyataan jamak diperlihatkan pada Gambar berikut.
Diagram alir (RailRoad) pernyataan jamak |
Kita kembali ke pernyataan berulang yaitu pernyataan while-do
while-do
Pernyataan while-do atau lebih sederhananya dikenal sebagai pernyataan while mengeksekusi pernyataan lain selama beberapa kondisi bemilai true. Disajikan diagram alit pernyataan berulang while.
Diagram alir pernyataan perulangan while-do |
Program Putaran_while_do; Uses crt; Var k:integer; Begin Clrscr; K:=0; While k<10 do Writeln('Amik'); K:=k+1; Writeln('Sinar Nusantara'); Writeln('Solo'); Readln End.
Jalankan program ini! Berapa kali kata Amik, Sinar Nusantara dan Solo dicetak?
Ket: Untuk menghentikan proses berulang secara terus-menerus
tekan : Ctrl+break.
Kemudian ubahlah program tersebut menjadi:
Program Putaran_while_do; Uses crt; Var k:integer; Begin Clrscr; K:=0; While k<10 do begin writeln('Amik'); Bad; k:=k+1; Writeln('Sinar Nusantara'); Writeln('Solo'); Readln Ind.
Jalankan program ini! Berapa kali kata Amik, Sinar Nusantara dan Solo dicetak?
Kemudian ubah lagi program tersebut menjadi:
Program Putaran_while_do; Uses art; Var k:integer; Begin Clrscr; K:=0; While k<10 do begin Writeln('Amik'); K:=k+1; End; Writeln('Sinar Nusantara'); Writeln('Solo'); Readln End.
Sekarang jalankan lagi program ini! Berapa kali kata Amik, Sinar Nusantara dan Solo dicetak? Jika ada perbedaan diskusikan dengan teman anda apa penyebabnya!
Kemudian ubah lagi program tersebut menjadi:
Program Putaran_while_do; Uses crt; Var k:integer; Begin Clrscr; K:=0; While k<10 do begin Writeln('Amik'); K:=k+1; Writeln('Sinar Nusantara'); End; Writeln('Jumlah putarannya = ',k); Writeln('Solo'); Readln End.
Sekarang jalankan lagi program ini! Berapa kali kata Amik, Sinar Nusantara dan Solo dicetak? Jika ada perbedaan diskusikan dengan ternan anda apa penyebabnya!
ubahlah program tersebut agar kata Solo jugs dicetak berulang! Bagaimana hasilnya (ada perbedaan atau tidak) jika pernyataan k:=k+1, ditempatkan sebelum pernyataan Writeln('Amik'); atau ditempatkan setelah Writeln(`Sinar Nusantara'); (sebelum end;).
Kemudian kondisi k<10 anda ubah menjadi k>10, lalu jalankan perhatikan hasilnya. Jika ada perbedaan diskusikan dengan teman anda! Demikian juga ubahlah kondisinya menjadi k<=10 dan k>=10, kemudian jalankan, perhatikan perbedaannya. Ubah lagi program 3.1. yang terakhir menjadi sebagai berikut:
Program Putaran_while_do; Uses crt: Var k:integer; begin Clrscr; K:=0; While k<10 do begin Writeln('Amik'); K:=k+2; Writeln('Sinar Nusantara'); End; Writeln('Jumlah putarannya = ',k); Writeln('Solo'); Readln End.
Jalankan dan perhatikan perbedaan jumlab putarannya!
Putaran while-do dengan kondisi boolean
Program while_do_boolean; Uses crt; Var k : integer; benar : boolean; Begin Clrscr; benar:=true;k:=0; While benar do begin Writeln('Amik'); K:=k+1; benar:=(k>10); Writeln('Sinar Nusantara'); End, Writeln('Solo'); Readln End.
Program Putaran while-do dengan boolean
Sekarang jalankan lagi program 3.2. ini! Berapa kali kata Amik, Sinar Nusantara dan Solo dicetak?
Bagaimana hasilnya (ada perbedaan atau tidak) jika pernyataan benar:=(k>10); ditempatkan sebelum pernyataan WritelneAmik'); atau ditempatkan setelah Writeln ('Sinar Nusantara'); (sebelum =tit). Tebak dulu hasilnya, sebelum menjalankan programnya!
Jika ada perbedaan diskusikan dengan teman ands apa penyebabnya!
Putaran while-do dengan tipe karakter
Program while_do_karakter_huruf; Uses crt; Var kar: char; Begin Clrscr; Writeln('putaran while dengan tipe karakter'); Kar:='A'; While kar c= 'Z' do begin Writeln(kar); Kar:=succ(kar); End; Writeln; Readln End.
Program Putaran while-do dengan tipe karakter.
Jalankan program ini, lalu ubah program 3.3. sehingga mencetak mulai dari 'Z' sampai 'A'.
Putaran while-do dengan kondisi jamak
Program while_do_Kodisi_jamak: uses crt; Var k : integer; A,B : Integer; begin Clrscr; A:=1;B:=0;k:=1; While (A<5) and (B<5) do begin Writeln('Jumlah putaran =•.k); Writeln('Niiai A= ',A); Writeln('Wilai B= ',B); A:=succ(A);B:=succ(B); K:=succ(k); End; Writeln; Readln End.
Program Putaran while-do dengan kondisi jamak kondisi).
Jalankan program 3.4. ini, kemudian ubahlah kondisinya dan operator and secara bergantian menjadi or dan xor. Buat dengan 3 kondisi (campuran operator not, and, or dan xor), jika kesulitan diskusikan dengan teman anda.
EmoticonEmoticon