SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK”AMIKOM” YOGYAKARTA WAKTU 100 S1-TI
ALGORITMA & PEMROGRAMAN
MODUL V
STRUKTUR KONTROL PERULANGAN
SEM I
MNT
I. STRUKTUR PERULANGAN Salah satu kelebihan komputer dibandingkan dengan manusia adalah kemampuannya untuk melaksanakan suatu instruksi berulang kali tanpa mengenal lelah dan bosan. Di dalam proses pengulangan atau kalang (repetition atau loop) dapat dilakukan sejumlah kali pengulangan atau sampai kondisi berhenti pengulangan tercapai. Secara umum terdiri atas dua bagian yaitu : kondisi pengulangan, yaitu ekspresi boolean yang harus dipenuhi untuk melaksanakan pengulangan yang dinyatakan secara eksplisit oleh pemrogram atau implisit oleh computer dan badan pengulangan, yaitu bagian algoritma yang diulang. Struktur pengulangan biasanya (opsional) disertai bagian :
1. Inisialisasi, yaitu aksi yang dilakukan sebelum pengulangan dilakukan pertama kali. 2. Terminasi, yaitu aksi yang dilakukan setelah pengulangan selesai dilaksanakan.
Instruksi While Bentuk instrukisnya dan flowchart:
24
” Pernyataan atau aksi akan di ulang jika kondisi bernilai benar dan jika salah maka keuar dari blok perulangan ( loop)” Contoh program01: #include
#include //program menampilkan angka diantara 2 nilai yang dimasukan int main() {
int
i, n1, n2;
cout << "Masukan nilai pertama : "; cin >> n1; cout << "Masukan nilai ke dua: "; cin >> n2; i = n1; while (i <= n2) {
cout << i << " "; i = i + 1; }//atau bisa menggunakan i++
getch(); return 0; }
25
Contoh outputnya :
while (i <= n2) { cout << i << " "; i = i + 1; } i <= n2 , menunjukan pengujian kondisi selama i lebih kecil atau sama dengan n2, dimana i=n1 misalnya n1=2 dan n2=12 makan jelas i <= n2 kondisinya TRUE sehingga pernyataan { cout << i << " "; i = i + 1; } akan dikerjakan dan selalu di ulang jika kondisinya true.
Instruksi DO - WHILE Bentuk instruksi dan Flowchart :
26
” Pada statemen do while, mula-mula pernyataan/aksi akan dieksekusi, selanjutnya nilai kondisi akan diuji.
Jika nilai kondisi benar, maka pernyataan akan dieksekusi lagi, kemudian kondisi diperiksa kembali, begitu seterusnya, sampai nilai kondisi salah ”. Jadi dengan menggunakan struktur do…while sekurang-kurangnya akan terjadi satu kali perulangan. Contoh program02: #include #include main() { int counter = 0;
//set initial value
do { cout << counter << " "; //display counter++;
//increment
}while ( counter < 10); //test condition getch(); return(0); } Instruksi FOR Bentuk instruksinya :
Struktur perulangan for biasanya digunakan untuk mengulang suatu proses yang telah diketahui jumlah perulangannya. Contoh program03: #include #include main() { int x; for (x = 0; x < 10; x++) //X++ sama dengan X=X+1 { cout << x
<< endl;
} getch(); 27
return(0); } Contoh outputnya :
Nested Loop Dalam suatu loop dapat terkandung loop yang lain. Loop yang terletak di dalam loop biasa disebut dengan nested loop. Contoh program04: #include #include int main() { int tinggi; cout << " Tinggi segitiga : "; cin >> tinggi; int baris, kolom; for (baris=1; baris <= tinggi; baris++) { for (kolom=1; kolom <= baris; kolom++) cout << '*'; cout << endl; } getch(); return 0; } Instruksi continue Instruksi continue digunakan untuk mengarahkan eksekusi ke iterasi (proses) berikutnya pada loop yang sama. Contoh program05: #include 28
#include int main() { int t; for (t=0; t < 10; t++) { if ( t==4 ) continue; cout << " bilangan :"<< t << endl; if ( t==6 ) break; } getch(); return 0; } Nilai Perulangan untuk t adalah 10 , saat kondisi perulangannya t=4 maka ada perintah continue untuk langsung ke kondisi perulangan berikutnya sehingga saat t=4 instruksi cout << " bilangan :"<< t << endl; di abaikan. Instruksi break menunjukan proses berakhirnya perulangan , saat kondisi perulangan t=6 maka berhenti. Berikut bentuk outputnya :
29
II. LATIHAN 1. Ketikan semua contoh program di modul ini tanpa terkecuali.
2. Buatlah program untuk menentukan rata-rata sejumlah N masukan, contoh outputnya adalah :
3. Buatlah Program untuk menampilkan tabel perkalian dari suatu bilangan yang di inputkan dengan pengalinya dari 0 sampai 12. misalkan bilangan yang di inputkan:2 maka akan tampil 0*2=0, 1*2=2 dan seterusnya sampai 12*2=24. 4. Buatlah program untuk menentukan nilai maksimal dan minimal dari sejumlah nilai masukan N. Contoh Outputnya :
30