1 MODUL V PERULANGAN Perulangan digunakan untuk menjalankan satu atau lebih perintah secara berulang selama kondisi tertentu. Dalam perulangan, umumny...
MODUL V PERULANGAN Perulangan digunakan untuk menjalankan satu atau lebih perintah secara berulang selama kondisi tertentu. Dalam perulangan, umumnya terdiri dari 3 komponen, yaitu: Nilai Awal/Inisialisasi, yaitu menentukan nilai awal dalam perulangan Perubah Nilai, selama perulangan berlangsung nilai akan diubah secara kontinyu Syarat Perulangan, jika nilai memenuhi kondisi tertentu, perulangan akan dilanjutkan, jika tidak, perulangan akan dihentikan. Perhatikan diagram berikut:
Nilai Awal
T
Nilai memenuhi Syarat ? Y Jalankan perintah
Ubah Nilai
Ada beberapa jenis perulangan yang bisa digunakan dalam bahasa pemrograman C++, diantaranya adalah: Pernyataan for Pernyataan do .. while Pernyataan while
Pernyataan for Pernyataan for bisa diterjemahkan “lakukan perulangan selama nilai memenuhi syarat perulangan, untuk mejalankan perintah (dalam blok) dengan nilai akan diubah sebanyak perubah nilai”.
Pernyataan for memiliki bentuk umum seperti berikut: for (inisialisasi; syarat perulangan; perubah nilai) { Pernyataan 1; Pernyataan N }
Contoh Program 1: /** * program untuk mencetak bilangan * dari 1 hingga 9 secara naik */ #include #include void main() { for (int i = 1; i < 10; i++) { cout << i << " "; } getch(); } Hasil Eksekusi Program: 1 2 3 4 5 6 7 8 9
Contoh Program 2: /** * program untuk mencetak bilangan * dari 1 hingga 9 secara menurun */ #include #include void main() { for (int i = 9; i > 0; i--) { cout << i << " "; } getch(); }
Hasil Eksekusi Program 9 8 7 6 5 4 3 2 1
Pernyataan while Pernyataan while bisa diterjemahkan “selama kondisi memenuhi syarat perulangan, jalankan perintah dalam blok secara berulang”. Pernyataan while memiliki bentuk umum seperti berikut: inisialisasi; while (syarat perulangan) { pernyataan 1; pernyataan N; perubah nilai; }
Contoh Program 3: /** * program untuk mencetak bilangan bulat */ #include #include void main() { int i = 1; while (i < 10) { if (i%2 == 0) cout << i << " "; i++; } getch(); } Hasil Eksekusi Program: 2 4 6 8
Contoh Program 4: /** * program untuk mencetak bilangan bulat */
#include #include void main() { int nilai = 1;
while (nilai%2 != 0) { cout << "Masukkan bilangan genap "; cin >> nilai; } cout << "Angka " << nilai << " termasuk bilangan genap"; getch(); } Hasil Eksekusi Program: Masukkan bilangan genap 3 Masukkan bilangan genap 5 Masukkan bilangan genap 7 Masukkan bilangan genap 8 Angka 8 termasuk bilangan genap
Pernyataan do – while Dalam pernyataan do – while akan menjalankan perintah terlebih dahulu, kemudian akan melakukan pengujian di akhir perulangan. Perhatikan diagram di bawah ini. Pernyataan do - while memiliki bentuk umum seperti berikut: inisialisasi; do { pernyataan 1; pernyataan N; perubah nilai;
} while(syarat perulangan);
Nilai Awal
Jalankan perintah
Ubah Nilai
Nilai memenuhi Syarat ?
Y
T
Dari diagram di atas dapat disimpulkan bahwa, dalam perulangan do – while, minimal akan ada satu kali perintah yang dijalankan meski kondidi perulangan tidak memenuhi syarat. Contoh Program 5: /** * program untuk mencetak bilangan bulat */ #include #include void main() { char jawab; int angka; do { cout cin cout cout
Hasil Eksekusi program: Masukkan Angka : 5 Angka 5 termasuk ganjil Coba lagi (Y/T) ? y Masukkan Angka : 8 Angka 8 termasuk genap Coba lagi (Y/T) ? t
Pernyataan Break Pernyataan break digunakan untuk keluar dari perulangan. Biasanya perintah break ini disimpan dalam percabangan. Contoh Program 6: #include #include void main() { int i = 0; while (i < 10) { if (i == 7) break; cout << i << " "; i++; } getch(); } Hasil eksekusi Program: 0 1 2 3 4 5 6 7
Pernyataan continue Pernyataan continue digunakan untuk mengarahkan eksekusi ke iterasi/perulangan berikutnya dengan mengabaikan perintah/pernyataan lain yang ada dibawahnya. Contoh Program 7: /** * program untuk mencetak bilangan ganjil */
#include #include void main() { int i = 0; while (i < 10) { i++; if (i%2 == 0) continue; cout << i << " "; } getch(); } Hasil eksekusi Program: 1 3 5 7 9
Nested Loop Nested loop adalah perulangan yang diletakan dalam perulangan lainnya. Dalam Nested loop ini bisa menggunakan pernyataan for, while, do – while atau kombinasi dari ketiga pernyataan tersebut. Contoh Program 8: #include #include #define MAX 5 void main() { int i = 0; while (i < MAX) { for (int j = 0; j <= i; j++) { cout << '*'; } cout << endl; i++; } getch(); } Hasil eksekusi program: * **
*** **** ***** Contoh Program 9: #include #include void main() { for (int i = 5; i > 0; i--) { for (int j = i; j > 0; j--) { cout << '*'; } cout << endl; } getch(); } Hasil eksekusi Program: ***** **** *** ** * Tugas 1. Buatlah program yang bisa menampilkan output seperti berikut: Masukkan angka (max 10): <11> Angka tidak boleh lebih dari 10 Masukkan angka (max 10): <5> 1 12 123 1234 12345 Coba lagi (Y/T) ? 2. Buatlah program untuk menghitung 10 deret bilangan genap dengan hasilnya: 2 + 4 + 6 + 8 + 10 + 12 + 14 + 16 + 18 + 20 = 110 3. Buatlah program untuk menghitung perkalian deret bilangan genap membentuk segitiga siku terbalik dengan hasil seperti berikut: