200 likes | 490 Views
IT-132 Dasar-Dasar Pemrograman. Repetisi. Ramos Somya , S.Kom ., M.Cs. 4 Prinsip Utama dalam Pemrograman. Sequence Procedure & Function Choice Repetition. Repetisi. Looping Iterasi Perulangan
E N D
IT-132 Dasar-Dasar Pemrograman Repetisi Ramos Somya, S.Kom., M.Cs.
4PrinsipUtamadalamPemrograman • Sequence • Procedure & Function • Choice • Repetition
Repetisi • Looping • Iterasi • Perulangan • Mengulang suatu perintah yang memiliki aturan yang sama, sehingga mengefisienkan dan memudahkan dalam pemrograman. • Karena penggunaan prosedur tidak mampu menghilangkan sekuens instruksi yang bersifat perulangan atau repetisi dalam suatu program.
Contoh *** *** *** • Dengan Procedure: def r3(p) = p();p();p(); enddef def tiga() = NL; p*;p*;p*; enddef r3(tiga) • Penggunaan repetisi jauh lebih baik terutama jika kita ingin membuat pola yang berbeda.
Format Repetisi (1) Contoh: #### Perintah: times 4 do p#; od times F do P od
… #### #### #### times 3 do NL; times 4 do p#; od od
Format Repetisi (2) for n runningthrough 1..5 do { perintah yang diulang } od for n runningbackthrough 5..1 do { perintah yang diulang } od Contoh: *** *** *** Perintah: for n runningthrough 1..3 do { NL; times 3 do p*; od } od
… * ** *** **** Perintah: for n runningthrough 1..4 do { NL; times n do p*; od } od
… **** *** ** * Perintah: for n rbt 4..1 do { NL; times n do p*; od; } od
… NL; times 7 do p*; od for n rt 1..5 do { NL; times n do ps; od; p*; times 5-n do ps; od; p*; } od NL; times 6 do ps; od; p*;
Procedure danrepetisi • Program sebelumnya dapat dibuat lebih dinamis menggunakan procedure dan repetisi: def segitiga (n) = NL; times n do p*; od for i rt 1..n-2 do { NL; times i do ps; od; p*; times n-2-i do ps; od; p*; } od NL; times n-1 do ps; od; p*; enddef
… Buat procedure untuk mencetak sebaris k segitiga dengan ukuran nxn. Jarak antar segitiga satu spasi. ??????
… • Ada berapa baris?? • Ada berapa segitiga?? Perintah: for n rbt 4..1 do { NL; times 3 do { times 5-n ps; od times n p*; od } od } od
… • Modifikasimenjadi n barisdan k kolom. • for n rt 4..1 mencetak 4 baris. • times 3 mencetak 3 segitiga. Prosedure-nya: def segitiga(n, k) = for m rbt n..1 do { NL; times k do { times n+1-m do ps; od times m do p*; od } od } od enddef
Latihan • Buat pola berikut ini dengan perulangan!
… * ** *** Bagaimana jika * diganti dengan angka?? Buat perintah dengan perulangan untuk mencetak pola: 1 1 22 12 333 123
… for n rt 1..3 do { NL; times n do p(n); od } od for n rt 1..3 do { NL; for m rt 1..n do { p(m); od } od } od