05 November 2026

, ,

Mengulang Instruksi dengan Perulangan

Belajar C++ · Materi Dasar

Mengulang Instruksi dengan Perulangan

Pelajari bagaimana membuat program C++ menjalankan instruksi secara berulang menggunakan for, while, dan do-while, tanpa harus menuliskan perintah yang sama berkali-kali.

Bayangkan kita diminta membuat program yang menampilkan tulisan "Belajar C++" sebanyak sepuluh kali. Jika belum mengenal perulangan, mungkin kita akan menuliskan perintah cout sebanyak sepuluh kali.

Programnya mungkin terlihat seperti berikut:

Menampilkan teks berulang tanpa perulangan
#include <iostream>
using namespace std;

int main() {
    cout << "Belajar C++" << endl;
    cout << "Belajar C++" << endl;
    cout << "Belajar C++" << endl;
    cout << "Belajar C++" << endl;
    cout << "Belajar C++" << endl;
    cout << "Belajar C++" << endl;
    cout << "Belajar C++" << endl;
    cout << "Belajar C++" << endl;
    cout << "Belajar C++" << endl;
    cout << "Belajar C++" << endl;

    return 0;
}

Cara tersebut memang dapat menghasilkan keluaran yang diinginkan. Namun, bagaimana jika kita harus menampilkan tulisan tersebut sebanyak 100 kali, 1.000 kali, atau bahkan 1 juta kali?

Menuliskan instruksi yang sama berulang kali tentu tidak efisien. Selain membuat kode menjadi panjang, cara tersebut juga menyulitkan kita ketika ingin mengubah instruksi yang dijalankan.

Dalam pemrograman, sebenarnya kita dapat memerintahkan komputer untuk mengulangi instruksi yang sama secara otomatis. Kita cukup menuliskan instruksi tersebut satu kali, kemudian menentukan berapa kali atau sampai kapan instruksi itu harus dijalankan.

Kemampuan inilah yang disebut perulangan atau looping.

Gagasan utama perulangan:

Daripada menuliskan instruksi yang sama berkali-kali, kita dapat menuliskannya satu kali dan meminta komputer mengulanginya berdasarkan aturan tertentu.

1. Mengapa Program Membutuhkan Perulangan?

Dalam banyak situasi, komputer harus melakukan pekerjaan yang sama berkali-kali. Misalnya, aplikasi dapat meminta pengguna memasukkan beberapa data, menghitung total nilai dari banyak murid, menampilkan daftar produk, atau memproses setiap data yang tersimpan dalam sebuah kumpulan.

Jika setiap instruksi harus ditulis satu per satu, program akan menjadi panjang dan sulit dikelola.

Perulangan membantu menyelesaikan masalah tersebut. Kita dapat menentukan sebuah instruksi yang ingin diulang, kemudian memberikan aturan kapan pengulangan dimulai dan kapan harus dihentikan.

Contoh penggunaan perulangan dalam aplikasi:
  • Aplikasi akademik: menghitung nilai dari banyak murid.
  • Aplikasi kasir: memproses beberapa barang yang dibeli pelanggan.
  • Game: terus memeriksa kondisi permainan selama permainan berlangsung.
  • Aplikasi perbankan: menampilkan daftar transaksi.
  • Aplikasi simulasi: mengulang proses perhitungan dalam sejumlah langkah.

Perhatikan bahwa perulangan tidak hanya digunakan untuk menampilkan tulisan berkali-kali. Konsep ini menjadi bagian penting dalam hampir semua program yang harus memproses data dalam jumlah banyak atau menjalankan proses secara berulang.

Sebelum mempelajari perulangan, sebaiknya pahami juga bagaimana program menentukan tindakan berdasarkan suatu kondisi. Hal tersebut telah dibahas dalam materi Membuat Program yang Dapat Mengambil Keputusan dengan C++.

2. Memahami Konsep Perulangan

Perulangan adalah struktur dalam pemrograman yang memungkinkan suatu instruksi atau sekumpulan instruksi dijalankan berulang kali selama aturan tertentu terpenuhi.

Secara sederhana, perulangan memiliki beberapa bagian penting:

  1. Inisialisasi: menentukan nilai awal yang digunakan dalam perulangan, jika diperlukan.
  2. Kondisi: menentukan apakah perulangan masih boleh dijalankan.
  3. Instruksi: bagian program yang akan dijalankan berulang kali.
  4. Perubahan nilai: memperbarui nilai yang digunakan dalam perulangan agar proses dapat bergerak menuju kondisi berhenti.

Contohnya, kita ingin menampilkan angka 1 sampai 5. Kita dapat memulai dari angka 1, kemudian menampilkan angka tersebut. Setelah itu, nilai angka ditambah satu dan proses diulangi sampai angka 5 ditampilkan.

Alurnya dapat digambarkan seperti berikut:

Urutan proses perulangan:
  1. Mulai dengan angka 1.
  2. Periksa apakah angka masih kurang dari atau sama dengan 5.
  3. Jika benar, tampilkan angka tersebut.
  4. Tambahkan angka dengan 1.
  5. Kembali memeriksa kondisi.
  6. Berhenti ketika kondisi tidak lagi terpenuhi.

Jika proses tersebut dilakukan secara manual, hasilnya adalah angka 1, 2, 3, 4, dan 5. Namun, komputer dapat menjalankan proses tersebut secara otomatis menggunakan struktur perulangan.

Untuk memahami bagaimana alur tersebut digambarkan menggunakan simbol dan arah proses, pelajari juga materi flowchart dalam algoritma pemrograman.

3. Menggunakan Perulangan for

Jenis perulangan pertama yang akan kita pelajari adalah for.

Perulangan for biasanya digunakan ketika jumlah pengulangan sudah diketahui atau dapat ditentukan sejak awal. Misalnya, kita ingin menampilkan angka 1 sampai 10, menampilkan tulisan sebanyak lima kali, atau melakukan proses sebanyak 100 iterasi.

Struktur dasar perulangan for adalah sebagai berikut:

Struktur dasar for
for (inisialisasi; kondisi; perubahan) {
    // Instruksi yang diulang
}

Ada tiga bagian penting di dalam tanda kurung for:

  • Inisialisasi: dijalankan satu kali sebelum perulangan dimulai.
  • Kondisi: diperiksa sebelum setiap putaran perulangan.
  • Perubahan: dijalankan setelah instruksi di dalam blok perulangan selesai.

Mari kita gunakan contoh sederhana untuk menampilkan angka 1 sampai 5.

Program menampilkan angka 1 sampai 5
#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 5; i++) {
        cout << i << endl;
    }

    return 0;
}

Hasil program:

1
2
3
4
5

Sekarang mari kita pahami bagaimana program tersebut bekerja.

Pada bagian int i = 1, program membuat variabel i dan memberikan nilai awal 1. Variabel ini berfungsi sebagai penghitung perulangan.

Selanjutnya, program memeriksa kondisi i <= 5. Selama kondisi tersebut benar, instruksi di dalam blok for akan dijalankan.

Setelah instruksi cout selesai dijalankan, program melakukan i++. Artinya, nilai i bertambah satu.

Proses tersebut terus berulang sampai nilai i menjadi 6. Pada saat itu, kondisi i <= 5 bernilai salah sehingga perulangan dihentikan.

Memahami i++ dan i--

Dalam contoh sebelumnya, kita menggunakan i++. Operator ini merupakan bentuk singkat untuk menambahkan nilai variabel sebanyak satu.

Penulisan Makna Contoh perubahan
i++ Menambah 1 5 menjadi 6
i-- Mengurangi 1 5 menjadi 4
i += 2 Menambah 2 5 menjadi 7
i -= 2 Mengurangi 2 5 menjadi 3

Operator tersebut dapat digunakan untuk mengatur arah perubahan nilai dalam perulangan.

Menghitung mundur dengan for

Perulangan tidak harus selalu berjalan dari angka kecil ke angka besar. Kita juga dapat membuat perulangan yang menghitung mundur.

Program menghitung mundur
#include <iostream>
using namespace std;

int main() {
    for (int i = 5; i >= 1; i--) {
        cout << i << endl;
    }

    cout << "Selesai";

    return 0;
}

Hasil program:

5
4
3
2
1
Selesai

Dalam contoh tersebut, nilai awal adalah 5. Setiap putaran mengurangi nilai i sebanyak satu. Perulangan berhenti ketika nilai i sudah lebih kecil dari 1.

Pendalaman: Memahami urutan kerja for secara bertahap

Misalkan kita menggunakan kode for (int i = 1; i <= 3; i++). Urutan kerjanya adalah:

  1. int i = 1 dijalankan satu kali.
  2. Program memeriksa apakah i <= 3.
  3. Jika benar, instruksi di dalam blok dijalankan.
  4. i++ dijalankan untuk menambah nilai.
  5. Program kembali memeriksa kondisi.
  6. Proses berakhir ketika kondisi bernilai salah.

Dengan memahami urutan ini, kita dapat mengetahui mengapa perulangan berjalan sebanyak tiga kali, bukan empat kali.

Materi pendalaman: Perulangan for dalam C++ secara lebih mendalam.

4. Menggunakan Perulangan while

Perulangan for cocok ketika jumlah pengulangan sudah dapat ditentukan. Namun, bagaimana jika kita tidak mengetahui sejak awal berapa kali suatu instruksi harus dijalankan?

Misalnya, sebuah program meminta pengguna memasukkan kata sandi. Program akan terus meminta kata sandi sampai pengguna memasukkan kata sandi yang benar.

Dalam situasi seperti ini, kita mungkin tidak mengetahui berapa kali pengguna akan mencoba. Bisa satu kali, dua kali, atau lebih.

C++ menyediakan perulangan while untuk situasi tersebut.

Perulangan while menjalankan instruksi selama kondisi yang ditentukan bernilai benar.

Struktur dasarnya:

Struktur dasar while
while (kondisi) {
    // Instruksi yang diulang
}

Berbeda dengan for, bagian inisialisasi dan perubahan nilai tidak dituliskan langsung di dalam struktur while. Kita biasanya mengaturnya secara terpisah.

Perhatikan contoh berikut:

Program menampilkan angka 1 sampai 5 dengan while
#include <iostream>
using namespace std;

int main() {
    int i = 1;

    while (i <= 5) {
        cout << i << endl;
        i++;
    }

    return 0;
}

Hasilnya sama dengan contoh perulangan for, yaitu menampilkan angka 1 sampai 5.

Namun, cara penulisannya berbeda. Variabel i dibuat sebelum perulangan dimulai. Kemudian, kondisi diperiksa melalui while. Setiap kali instruksi selesai dijalankan, nilai i bertambah satu.

Ketika nilai i mencapai 6, kondisi i <= 5 tidak lagi terpenuhi. Akibatnya, perulangan berhenti.

Contoh while dengan kondisi yang bergantung pada input pengguna

Sekarang kita gunakan contoh yang lebih dekat dengan situasi nyata. Program akan terus meminta pengguna memasukkan angka selama angka yang dimasukkan belum sama dengan 0.

Program meminta input sampai pengguna memasukkan 0
#include <iostream>
using namespace std;

int main() {
    int angka;

    cout << "Masukkan angka (0 untuk berhenti): ";
    cin >> angka;

    while (angka != 0) {
        cout << "Anda memasukkan: " << angka << endl;

        cout << "Masukkan angka (0 untuk berhenti): ";
        cin >> angka;
    }

    cout << "Program selesai.";

    return 0;
}

Program tersebut akan terus meminta angka selama nilai yang dimasukkan tidak sama dengan 0.

Jika pengguna memasukkan angka 5, program menampilkan angka tersebut dan meminta input kembali. Jika pengguna memasukkan angka 12, proses yang sama terjadi. Namun, ketika pengguna memasukkan 0, kondisi angka != 0 menjadi salah dan perulangan berhenti.

Hati-hati dengan infinite loop.

Jika kondisi perulangan selalu benar dan tidak ada perubahan yang membuat kondisi menjadi salah, program dapat berjalan terus-menerus. Keadaan ini disebut infinite loop atau perulangan tanpa akhir.

Untuk memahami lebih lanjut cara kerja kondisi dalam perulangan, pelajari perulangan while dalam C++.

5. Menggunakan Perulangan do-while

Perulangan while memeriksa kondisi terlebih dahulu sebelum menjalankan instruksi. Artinya, jika kondisi sejak awal bernilai salah, instruksi di dalam perulangan tidak akan dijalankan sama sekali.

Namun, ada situasi ketika kita ingin instruksi dijalankan minimal satu kali sebelum kondisi diperiksa.

Contohnya adalah program menu. Ketika aplikasi dibuka, kita ingin menu langsung ditampilkan kepada pengguna. Setelah pengguna memilih salah satu pilihan, program baru memeriksa apakah proses perlu diulang atau dihentikan.

Untuk kebutuhan tersebut, kita dapat menggunakan do-while.

Struktur dasarnya:

Struktur dasar do-while
do {
    // Instruksi yang diulang
} while (kondisi);

Perhatikan bahwa pada do-while, kondisi dituliskan setelah blok instruksi. Karena itu, instruksi di dalam blok akan dijalankan terlebih dahulu, baru kemudian kondisi diperiksa.

Contoh berikut menampilkan angka 1 sampai 5 menggunakan do-while.

Program menampilkan angka 1 sampai 5 dengan do-while
#include <iostream>
using namespace std;

int main() {
    int i = 1;

    do {
        cout << i << endl;
        i++;
    } while (i <= 5);

    return 0;
}

Hasilnya:

1
2
3
4
5

Hasilnya memang sama dengan contoh for dan while. Perbedaannya terletak pada urutan pemeriksaan kondisi.

Membuktikan bahwa do-while dijalankan minimal satu kali

Perhatikan contoh berikut:

Kondisi awal bernilai salah
#include <iostream>
using namespace std;

int main() {
    int i = 10;

    do {
        cout << "Instruksi dijalankan";
    } while (i < 5);

    return 0;
}

Variabel i memiliki nilai 10, sedangkan kondisi yang diperiksa adalah i < 5. Kondisi tersebut jelas salah.

Namun, program tetap menampilkan tulisan "Instruksi dijalankan" satu kali. Hal ini terjadi karena instruksi dalam do-while dijalankan sebelum kondisi diperiksa.

Perbedaan penting:
  • while: kondisi diperiksa sebelum instruksi dijalankan.
  • do-while: instruksi dijalankan terlebih dahulu, kemudian kondisi diperiksa.

Perhatikan juga tanda titik koma setelah bagian while (kondisi);. Tanda titik koma tersebut merupakan bagian dari sintaks do-while dan tidak boleh dihilangkan.

Pelajari contoh lainnya melalui materi perulangan do-while dalam C++.

6. Memahami Perbedaan for, while, dan do-while

Ketiga jenis perulangan tersebut sama-sama digunakan untuk mengulang instruksi. Namun, masing-masing memiliki cara kerja dan situasi penggunaan yang berbeda.

Aspek for while do-while
Pemeriksaan kondisi Sebelum instruksi Sebelum instruksi Setelah instruksi
Minimal satu kali dijalankan Tidak Tidak Ya
Penempatan inisialisasi Umumnya di bagian for Biasanya sebelum while Biasanya sebelum do
Penggunaan umum Jumlah pengulangan diketahui Bergantung pada kondisi Instruksi harus dijalankan minimal sekali

Contohnya, jika kita ingin menampilkan angka 1 sampai 100, perulangan for dapat menjadi pilihan yang praktis karena jumlah pengulangan sudah diketahui.

Jika kita ingin meminta pengguna memasukkan data sampai pengguna memilih untuk berhenti, while dapat digunakan karena jumlah pengulangan bergantung pada input pengguna.

Jika kita ingin menampilkan menu terlebih dahulu sebelum memeriksa pilihan pengguna, do-while dapat menjadi pilihan yang sesuai.

Ingat:

Ketiga struktur tersebut tidak selalu saling menggantikan secara langsung dalam hal keterbacaan kode. Pilih struktur yang paling sesuai dengan alur logika program agar kode lebih mudah dipahami dan dipelihara.

7. Menghentikan dan Melewati Perulangan

Dalam beberapa situasi, kita mungkin ingin menghentikan perulangan sebelum kondisi normalnya terpenuhi. Ada juga situasi ketika kita ingin melewati satu putaran tertentu, tetapi tetap melanjutkan putaran berikutnya.

C++ menyediakan dua pernyataan yang dapat digunakan untuk mengatur alur tersebut, yaitu break dan continue.

Menggunakan break

Pernyataan break digunakan untuk menghentikan perulangan secara langsung, meskipun kondisi perulangan sebenarnya masih bernilai benar.

Contohnya, kita ingin menampilkan angka mulai dari 1. Namun, perulangan harus dihentikan ketika angka mencapai 5.

Contoh penggunaan break
#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 10; i++) {
        if (i == 5) {
            break;
        }

        cout << i << endl;
    }

    return 0;
}

Hasil program:

1
2
3
4

Ketika nilai i mencapai 5, kondisi i == 5 menjadi benar. Program kemudian menjalankan break sehingga perulangan langsung dihentikan.

Menggunakan continue

Berbeda dengan break, pernyataan continue tidak menghentikan seluruh perulangan. Pernyataan ini hanya melewati sisa instruksi pada putaran yang sedang berjalan, kemudian melanjutkan ke putaran berikutnya sesuai aturan perulangannya.

Misalnya, kita ingin menampilkan angka 1 sampai 5, tetapi tidak ingin menampilkan angka 3.

Contoh penggunaan continue
#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 5; i++) {
        if (i == 3) {
            continue;
        }

        cout << i << endl;
    }

    return 0;
}

Hasil program:

1
2
4
5

Ketika nilai i mencapai 3, program menjalankan continue. Akibatnya, perintah cout pada putaran tersebut dilewati. Perulangan kemudian melanjutkan proses untuk angka berikutnya.

Pernyataan Fungsi
break Menghentikan seluruh perulangan yang sedang dijalankan.
continue Melewati sisa instruksi pada putaran saat ini dan melanjutkan ke putaran berikutnya.

Untuk mempelajari pengendalian alur program secara lebih mendalam, kunjungi materi break dan continue dalam C++.

8. Mengenal Nested Loop

Sebelumnya kita telah mengenal nested if, yaitu percabangan yang ditempatkan di dalam percabangan lainnya. Konsep serupa juga dapat diterapkan pada perulangan.

Nested loop adalah perulangan yang berada di dalam perulangan lainnya.

Nesting atau penempatan perulangan di dalam perulangan dapat digunakan ketika kita perlu mengulang suatu proses di dalam proses pengulangan yang lain.

Contohnya, kita ingin menampilkan pola angka berbentuk beberapa baris dan kolom.

Contoh nested loop
#include <iostream>
using namespace std;

int main() {
    for (int baris = 1; baris <= 3; baris++) {
        for (int kolom = 1; kolom <= 4; kolom++) {
            cout << "* ";
        }

        cout << endl;
    }

    return 0;
}

Hasil program:

* * * *
* * * *
* * * *

Mengapa terdapat dua perulangan?

Perulangan pertama menggunakan variabel baris untuk mengatur jumlah baris yang akan dibuat. Sementara itu, perulangan kedua menggunakan variabel kolom untuk mengatur jumlah simbol bintang pada setiap baris.

Setiap kali perulangan luar berjalan satu kali, perulangan dalam akan menyelesaikan seluruh putarannya terlebih dahulu. Setelah itu, program kembali melanjutkan perulangan luar.

Dengan demikian, program menghasilkan tiga baris, dan setiap baris memiliki empat simbol bintang.

Memahami urutan nested loop

Jika perulangan luar berjalan sebanyak 3 kali dan perulangan dalam berjalan sebanyak 4 kali pada setiap putaran perulangan luar, maka instruksi di dalam perulangan terdalam dijalankan sebanyak 12 kali.

Perhitungannya:

Jumlah pengulangan total = 3 × 4 = 12 kali.

Perulangan dalam dijalankan kembali dari awal setiap kali perulangan luar memasuki putaran baru.

Nested loop banyak digunakan untuk mengolah data berbentuk tabel, membuat pola angka, memproses matriks, dan berbagai kebutuhan pemrograman lainnya.

Jika ingin melihat variasi pola dan contoh penerapan yang lebih banyak, pelajari nested loop dalam C++.

9. Contoh Penerapan Perulangan

Setelah mengenal struktur perulangan, sekarang kita akan menggunakannya untuk menyelesaikan beberapa permasalahan sederhana.

Contoh 1: Menghitung jumlah angka dari 1 sampai N

Misalnya, pengguna memasukkan angka 5. Program harus menghitung hasil penjumlahan 1 + 2 + 3 + 4 + 5.

Kita dapat menggunakan perulangan untuk menjumlahkan setiap angka secara bertahap.

Program menghitung jumlah angka
#include <iostream>
using namespace std;

int main() {
    int n;
    int total = 0;

    cout << "Masukkan angka: ";
    cin >> n;

    for (int i = 1; i <= n; i++) {
        total += i;
    }

    cout << "Total penjumlahan: " << total;

    return 0;
}

Jika pengguna memasukkan angka 5, proses yang dilakukan adalah:

Putaran pertama: total = 0 + 1 = 1

Putaran kedua: total = 1 + 2 = 3

Putaran ketiga: total = 3 + 3 = 6

Putaran keempat: total = 6 + 4 = 10

Putaran kelima: total = 10 + 5 = 15

Hasil akhir: 15

Contoh tersebut menunjukkan bahwa perulangan dapat digunakan untuk melakukan perhitungan secara bertahap.

Contoh 2: Menampilkan tabel perkalian

Perulangan juga dapat digunakan untuk membuat tabel perkalian. Misalnya, kita ingin menampilkan tabel perkalian dari angka yang dimasukkan pengguna.

Program tabel perkalian
#include <iostream>
using namespace std;

int main() {
    int angka;

    cout << "Masukkan angka: ";
    cin >> angka;

    for (int i = 1; i <= 10; i++) {
        cout << angka << " x " << i
             << " = " << angka * i << endl;
    }

    return 0;
}

Jika pengguna memasukkan angka 5, hasilnya:

5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
5 x 10 = 50

Contoh 3: Meminta pengguna memasukkan beberapa nilai

Bayangkan kita ingin membuat program yang menghitung rata-rata nilai dari sejumlah murid. Jumlah murid ditentukan oleh pengguna.

Tanpa perulangan, kita harus menuliskan instruksi input untuk setiap murid secara terpisah. Dengan perulangan, proses input dapat dilakukan secara otomatis.

Program menghitung rata-rata nilai
#include <iostream>
using namespace std;

int main() {
    int jumlahMurid;
    double nilai;
    double total = 0;

    cout << "Jumlah murid: ";
    cin >> jumlahMurid;

    if (jumlahMurid <= 0) {
        cout << "Jumlah murid harus lebih dari 0.";
        return 0;
    }

    for (int i = 1; i <= jumlahMurid; i++) {
        cout << "Masukkan nilai murid ke-"
             << i << ": ";
        cin >> nilai;

        total += nilai;
    }

    double rataRata = total / jumlahMurid;

    cout << "Rata-rata nilai: " << rataRata;

    return 0;
}

Program tersebut meminta jumlah murid terlebih dahulu. Setelah itu, perulangan for digunakan untuk meminta nilai setiap murid dan menjumlahkannya.

Setelah seluruh nilai dimasukkan, program membagi total nilai dengan jumlah murid untuk memperoleh rata-rata.

Contohnya, jika terdapat tiga murid dengan nilai 80, 90, dan 70, maka total nilai adalah 240. Rata-ratanya adalah 240 dibagi 3, yaitu 80.

Contoh 4: Membuat menu yang terus ditampilkan sampai pengguna memilih keluar

Dalam aplikasi, menu sering kali perlu ditampilkan berulang kali. Pengguna dapat memilih suatu fitur, kembali ke menu utama, kemudian memilih fitur lainnya.

Program berikut menggunakan do-while agar menu selalu ditampilkan minimal satu kali dan terus muncul sampai pengguna memilih untuk keluar.

Program menu sederhana dengan do-while
#include <iostream>
using namespace std;

int main() {
    int pilihan;

    do {
        cout << endl;
        cout << "=== MENU APLIKASI ===" << endl;
        cout << "1. Lihat profil" << endl;
        cout << "2. Lihat informasi" << endl;
        cout << "3. Keluar" << endl;

        cout << "Pilih menu: ";
        cin >> pilihan;

        switch (pilihan) {
            case 1:
                cout << "Menampilkan profil.";
                break;

            case 2:
                cout << "Menampilkan informasi.";
                break;

            case 3:
                cout << "Program selesai.";
                break;

            default:
                cout << "Pilihan tidak tersedia.";
        }

    } while (pilihan != 3);

    return 0;
}

Program akan terus menampilkan menu selama pengguna tidak memilih angka 3. Ketika angka 3 dimasukkan, kondisi pilihan != 3 menjadi salah sehingga perulangan berhenti.

Contoh ini juga memperlihatkan bagaimana percabangan dan perulangan dapat digunakan bersama-sama. do-while mengatur pengulangan menu, sedangkan switch menentukan tindakan berdasarkan pilihan pengguna.

10. Kesalahan yang Sering Terjadi Saat Menggunakan Perulangan

Perulangan terlihat sederhana, tetapi ada beberapa kesalahan yang dapat membuat program menghasilkan keluaran yang tidak sesuai atau bahkan tidak pernah berhenti.

Kesalahan 1: Lupa mengubah nilai penghitung

Perhatikan contoh berikut:

int i = 1;

while (i <= 5) {
    cout << i << endl;
}

Variabel i tidak pernah bertambah. Akibatnya, nilainya selalu 1 dan kondisi i <= 5 terus bernilai benar.

Program akan terus menampilkan angka 1 tanpa berhenti. Untuk memperbaikinya, tambahkan perubahan nilai seperti i++ di dalam perulangan.

Kesalahan 2: Salah menentukan kondisi perulangan

Misalnya, kita ingin menampilkan angka 1 sampai 5, tetapi menulis kondisi i < 5. Program hanya akan menampilkan angka 1 sampai 4.

Jika angka 5 juga ingin ditampilkan, kondisi yang digunakan adalah i <= 5.

Kesalahan 3: Salah menentukan nilai awal

Jika perulangan dimulai dari angka 0, hasilnya tentu berbeda dengan perulangan yang dimulai dari angka 1.

Pastikan nilai awal sesuai dengan kebutuhan program. Perhatikan juga apakah nilai awal tersebut sudah termasuk dalam jumlah pengulangan yang diinginkan.

Kesalahan 4: Salah memahami posisi pemeriksaan kondisi

Pada while, kondisi diperiksa sebelum instruksi dijalankan. Pada do-while, instruksi dijalankan terlebih dahulu.

Perbedaan ini dapat menghasilkan jumlah eksekusi yang berbeda, terutama ketika kondisi sejak awal bernilai salah.

Kesalahan 5: Salah menggunakan break dan continue

break menghentikan perulangan, sedangkan continue hanya melewati sisa instruksi pada putaran saat ini.

Jika keduanya tertukar, alur program dapat menjadi berbeda dari yang diharapkan.

Kesalahan 6: Menggunakan perulangan yang tidak sesuai kebutuhan

Jika jumlah pengulangan sudah diketahui, for sering kali lebih mudah dibaca. Jika pengulangan bergantung pada suatu kondisi, while dapat menjadi pilihan yang lebih jelas. Jika instruksi harus dijalankan minimal satu kali, pertimbangkan do-while.

11. Latihan dan Tantangan

Setelah mempelajari berbagai struktur perulangan, cobalah menyelesaikan latihan berikut untuk menguji pemahaman.

Latihan 1: Memahami for

Perhatikan kode berikut:

for (int i = 1; i <= 5; i++) {
    cout << i;
}

Berapa kali instruksi cout dijalankan? Apa keluaran yang dihasilkan?

Latihan 2: Memahami while

Mengapa perulangan while dapat menyebabkan infinite loop jika nilai yang digunakan dalam kondisi tidak pernah berubah?

Latihan 3: Memahami do-while

Jika kondisi i < 5 sejak awal bernilai salah, apakah instruksi di dalam do-while tetap dijalankan? Jelaskan alasannya.

Latihan 4: Memahami break dan continue

Apa perbedaan hasil program jika kita mengganti continue dengan break pada contoh yang melewati angka 3?

Latihan 5: Membuat perulangan

Buat program yang menampilkan seluruh bilangan genap dari 2 sampai 20 menggunakan perulangan for.

Tantangan: Membuat program penghitung total belanja

Buat program kasir sederhana dengan ketentuan berikut:

  • Program meminta pengguna memasukkan jumlah barang yang dibeli.
  • Program meminta harga setiap barang satu per satu.
  • Setiap harga yang dimasukkan dijumlahkan ke dalam total belanja.
  • Setelah seluruh barang dimasukkan, program menampilkan total belanja.

Petunjuk: Gunakan for untuk mengulang proses input harga sesuai jumlah barang. Gunakan variabel bertipe double untuk menyimpan harga dan total belanja.

12. Kesimpulan

Perulangan merupakan salah satu konsep dasar dalam pemrograman yang memungkinkan komputer menjalankan instruksi secara berulang. Dengan menggunakan perulangan, kita tidak perlu menuliskan instruksi yang sama berkali-kali.

Dalam C++, terdapat tiga struktur perulangan utama yang perlu dipahami:

  • for digunakan ketika jumlah pengulangan sudah diketahui atau dapat ditentukan.
  • while digunakan ketika pengulangan bergantung pada suatu kondisi yang diperiksa sebelum instruksi dijalankan.
  • do-while digunakan ketika instruksi harus dijalankan minimal satu kali sebelum kondisi diperiksa.

Selain ketiga struktur tersebut, kita juga dapat menggunakan break untuk menghentikan perulangan, continue untuk melewati satu putaran, dan nested loop untuk membuat perulangan di dalam perulangan lainnya.

Perulangan akan menjadi semakin berguna ketika digabungkan dengan konsep lain seperti variabel, operator, input, pengolahan data, dan percabangan. Dengan menggabungkan konsep-konsep tersebut, kita dapat membuat program yang mampu menyelesaikan permasalahan yang lebih kompleks.

Jelajahi materi C++ lainnya

Pelajari materi pemrograman C++ secara bertahap melalui artikel berikut:

Materi disusun secara bertahap untuk membantu memahami dasar-dasar pemrograman C++.

```

0 comments:

Posting Komentar