Perulangan(looping) Oleh: Sri supatmi,S.Kom
PERULANGAN (1) - Perulangan FOR positif Perulangan for perulangan dengan statemen for digunakan untuk mengulang statemen atau satu blok statemen berulang kali sejumlah yang ditentukan. Perulangan statemen for ada 3: perulangan positif, perulangan negatif dan perulangan tersarang. - Perulangan FOR positif Perulangan denga penghitung ( counter ) dari kecil ke besar atau dengan kata lain pertambahannya positif. Perulangan positif dapat dibentuk dengan menggunakan statemen For-To-Do, dengan bentuk umum: For variabel-kontrol := nilai-awal To nilai-akhir Do Statemen Variabel-kontrol, nilai-awal, nilai-akhir harus mempunyai tipe yang sama, yaitu bertipe integer.
Contoh program Program ulang_positif; Uses Wincrt; Var I:integer; Begin For i:=1 to 5 do Writeln(i); End. Jika program diatas di jalankan maka akan tampil output: 1 2 3 4 5
- Perulangan FOR negatif Perulangan denga penghitung ( counter ) dari besar ke kecil atau dengan kata lain pertambahannya negatif. Perulangan negatif dapat dibentuk dengan menggunakan statemen For-DownTo-Do, dengan bentuk umum: For variabel-kontrol := nilai-awal DownTo nilai-akhir Do Statemen Variabel-kontrol, nilai-awal, nilai-akhir harus mempunyai tipe yang sama, yaitu bertipe integer.
Contoh Program perulangannegatif Program ulang_negatif; Uses Wincrt; Var I:integer; Begin For i:=5 Downto 1 do Writeln(I); End. Jika program disamping dijalankan, maka akan menampilkan data I dari terbesar ke angka yang terkecil seperti terlihat pada tampilan disamping. 5 4 3 2 1
PERULANGAN (2) Perulangan Bersarang perulangan yang berada didalam perulangan yang lainnya. Perulangan yang lebih dalam akan diproses terlebih dahulu sampau habis, kemudian perulangan yang lebih luar baru akan bertambah, mengerjakan perulangan yang lebih dalam lagi mulai dari nilai awalnya dan seterusnya. Bentuk Umum For Bersarang : For variabel-kontrol := nilai-awal To nilai-akhir Do For variabel-kontrol2 := nilai-awal2 To nilai-akhir2 Do Statemen;
Contoh Program Perulangan FOR Bersarang Perulangan sebanyak j Program seleksi_sarang; Uses Wincrt; Var I,j:integer; Begin For i:=1 to 5 do For j:=1 to 3 do Writeln(I,j:4); End; End. Jika program diatas dijalankan maka perulangan yang akan dilakukan adalah perulangan sebanyak j kemudian melakukan perulangan sebanyak i, seperti terlihat pada tampilan program disamping. Perulangan sebanyak i
2. Perulangan While..Do Perulangan ini menggunakan statemen while-Do yang mempunyai struktur dalam bentuk umum sebagai berikut: Bentuk Umum : While Ungkapan Do Statemen Statemen while-do digunakan untuk melakukan proses perulangan suatu statemen atau blok statemen terus menerus selama kondisi ungkapan logika pada While masih bernilai logika benar.
Contoh Program perulangan while-do Program ulang_while; Uses Wincrt; Var I:integer; Begin I:=0; While I<5 do Writeln(I); I:=I+1; End; End. Jika program diatas dijalankan perulangan akan tetap terus berjalan ketika nilai I masih bernilai benar ( i<5).jika I sudah mencapai angka lima maka program tersebut akan berhenti. Seperti terlihat pada tampilan output disamping.
PERULANGAN (3) 3. Perulangan Repeat...Until Repeat Statemen; Digunakan untuk mengulang ( repeat ) statemen atau blok statemen sampai ( Until ) kondisi yang diseleksi tidak terpenuhi. Statement Repeat dapat memiliki sintak sebagai berikut: Repeat Statemen; Until Ungkapan Pada sintaks di atas, bagian syarat bernilai TRUE atau FALSE. Selama syarat bernilai FALSE atau syarat belum terpenuhi, proses perulangan akan terus dilakukan. Perulangan baru akan berhenti jika syarat sudah terpenuhi atau bernilai TRUE.
Agak sedikit beda dengan WHILE, dalam REPEAT minimal perulangan yang dapat dilakukan adalah sekali. Hal ini dikarenakan pengecekan syarat terletak di bawah. Sedangkan untuk WHILE dapat dimungkinkan tidak terjadi perulangan, yaitu apabila syarat langsung bernilai FALSE (syarat terletak di atas). Contoh Program Perulangan Repeat..Until Program seleksi_repeat; Uses Wincrt; Var Harga,I:integer; Begin I:=1; Repeat I:=I+1; Writeln(I,’ bahasa pascal’); Until i:=5; End.
Penjelasan program I = 1 i:=i+1 Keterangan 2 2+1 False 3 3+1 4 4+1 5 5+1 True Program diatas akan terus melakukan perulangan ketika nilainya belum memenuhi nilai i=5, dan jika nilai sudah memenuhi syarat pada until maka proses akan berhenti. False, proses terus berjalan True, proses berhenti.
LATIHAN PRAKTIKUM Perulangan for positif Perulangan for negatif Program seleksi_case; Uses Wincrt; Var I:integer; Begin For i:=1 to 5 do Writeln(i); End. Perulangan for negatif Program seleksi_case; Uses Wincrt; Var I:integer; Begin For i:=5 Downto 1 do Writeln(I); End.
LATIHAN PRAKTIKUM (lanjutan) Perulangan for bersarang Program ulang_repeat1; Uses Wincrt; Var Harga,I:integer; Begin I:=1; Repeat I:=I+1; Writeln(I,’ bahasa pascal’); Until i:=5; End. Perulangan for while…do Program ulang_while; Uses Wincrt; Var I:integer; Begin I:=0; While I<5 do Writeln(I); I:=I+1; { atau inc(I)} End; End.
LATIHAN PRAKTIKUM (lanjutan) Perulangan repeat..until Program seleksi_sarang; Uses Wincrt; Var I,j:integer; Begin For i:=1 to 5 do For j:=1 to 3 do Writeln(I,j:4); End; End.
Tugas praktikum Buat program untuk menampilkan data berikut: Buatlah program untuk menampilkan bilangan genap dan ganjil sampai angka 20. Buatlah program untuk menampilkan data berikut ini: