- PERTEMUAN 5 & 6 – PERULANGAN LOGIKA DAN ALGORITMA - PERTEMUAN 5 & 6 – PERULANGAN
Alur proses perulangan Menyelesaikan masalah dengan melakukan perulangan satu proses atau beberapa proses. Biasa disebut dengan looping. Memindahkan kontrol komputer dari akhir suatu proses kembali ke bagian awalnya.
Contoh Proses Perulangan Tentukan (pertama/berikutnya) nama pegawai, empname, salarinya Bonus=0.03*salari Catat empname dan bonus Kembali ke langkah awal Start Read empname, salary Bonus=0.03*salary Write empname, bonus
Counter Untuk mengontrol sebuah loop. Menghasilkan kondisi stop. Counter merupakan sebuah variabel yang nilainya dinaikkan satu setiap kali pengulangan. Contoh pengulangan sebanyak 50 kali. Start Count=1 Yes Count=50 End No Proses Count = count+1
Perulangan For For i:=1 to jmlh Notasi text algoritma For Menaik : For VariableCounter NilaiAwal to NilaiAkhir do Aksi-aksi Endfor Notasi text algoritma For Menurun : For VariableCounter NilaiAkhir Downto NilaiAwal do Proses 1 i = jmlh
Percabangan dalam perulangan For i:=1 to jmlh PercabanganDalamPerulangan; Deklarasi Variabel; jmlh:numerik; Begin …… for i:=1 to jmlh do begin if kond 1 then instruksi 1 else instruksi 2 end End N Kondisi 1 Instruksi 2 Y Instruksi 1 N i = jmlh Y
Latihan Soal Cetak Bilangan 1-N bilangan secara Ascending dan Descending. Cetak tulisan “STIKOM Surabaya” sebanyak 10 kali. Cetak Bilangan Genap mulai dari 0 sampai N bilangan.
TUGAS 5 Buat algoritma untuk menghitung nilai rata-rata dari sejumlah nilai yang dimasukkan dari keyboard. Buat algoritma untuk menghitung nilai faktorial dari n bilangan, contoh : 5! = 5*4*3*2*1=120 MINGGU DEPAN : QUIZ 1
While – Do Pengulanganan for mengharuskan jumlah pengulangannya harus diketahui saat akan dieksekusi. Problem : Tampilkan tulisan berjalan di monitor, dan berhenti jika user menekan Enter. While – Do : Bentuk pengulangan dengan kondisi pengulangan diperiksa pada awal struktur pengulangan. Instruksi dalam badan pengulangan hanya dapat dilaksanakan bila pengetesan kondisi menghasilkan nilai true.
Diagram Flowchart While – Do Notasi penulisan : while (kondisi) do Aksi endwhile No (Kondisi) Yes Notasi penulisan : do { Aksi; } while (kondisi) /*endwhile*/ Aksi-aksi
Contoh Algoritma While-Do Algoritma Mencetak_Bilangan_Genap_<_Input {Mencetak bilangan genap yang lebih kecil dari masukan} Deklarasi K, N:Integer {Pencacah pengulangan} Diskripsi Read(N) K0 (Inisialisasi) while K<= N do write (K) K K+2 Endwhile {Kondisi akhir pengulangan : K>N}
Repeat – Until Hampir sama dengan pernyataan pengulangan while-do Jika pada pernyataan while, kondisi dicetak pada awal kalang. Pada Repeat Until, kondisi dicetak pada akhir kalang. Bila pernyataan while-do mengulang pernyataan selama kondisi masih terpenuhi Pernyataan repeat-until mengulang pernyataan selama kondisi belum terpenuhi
Diagram Flowchart Repeat – Until Notasi penulisan : repeat (pernyataan – pernyataan yang akan diulang) until kondisi Aksi-aksi No (Kondisi) Yes
Contoh Algoritma Repeat – Until Algoritma Mencetak_Bilangan_Genap_<_Input {Mencetak bilangan genap yang lebih kecil dari masukan} Deklarasi K, N:Integer {Pencacah pengulangan} Diskripsi Read(N) K0 (Inisialisasi) repeat write (K) K K+2 until (k>N) {Kondisi akhir pengulangan : K>N}
Pengulangan Bersarang Algoritma Menampilkan_Konfigurasi_Bintang Deklarasi Baris, i , j : Integer Deskripsi read(baris) for i 1 to Baris do for j 1 to i do write(“*”) endfor writeln // Ganti baris
LATIHAN SOAL Buatlah deret bilangan fibonacci dimana jumlah bilangan yang ditampilkan dimasukkan. Input : N=10 Output : 1 1 2 3 5 8 13 21 34 55 Carilah nilai KPK dari 2 bilangan bulat yang dimasukkan dari keyboard. Input : x=10; y = 6 Output : KPK = 30 Input : x = 15; y = 25 Output : KPK = 75 Buat algoritma untuk menampilkan konfigurasi sbb : Jika N=1, maka output di layar adalah * Jika N = 2, maka output di layar adalah * * Jika N=3, maka output di layar adalah * * * Jika N =4, maka output di layar adalah * * * *
TUGAS 6 Buatlah deret bilangan fibonacci dimana jumlah bilangan yang ditampilkan dimasukkan. Input : N=10 Output : 55 34 21 13 8 5 3 1 1 Buat algoritma untuk menampilkan konfigurasi * * * * * * * * * * * * * * * Buat algoritma untuk membentuk suatu deret 1, 1, 1, 4, 1, 9,1,16,1 ……