Lompat ke konten Lompat ke sidebar Lompat ke footer

Tutorial C++ #5: Studi Kasus Menentukan Bilangan Ganjil atau Genap Pada Elemen Array

Studi Kasus Menentukan Bilangan Ganjil atau Genap Pada Elemen Array

Assalamualaikum, Wr.Wb Sobat blogger semuanya! Kali ini gua bakal berbagi source code lagi nih buat kalian semua yang lagi mendalami bahasa C++. Studi kasus kita kali ini akan membahas materi yang sangat populer di kelas algoritma, yaitu Memilah Bilangan Ganjil atau Genap Pada Elemen Array.

Berbeda dengan program statis biasa, di tutorial ini kita akan membuat program yang dinamis. Artinya, user bisa menentukan sendiri berapa banyak angka yang mau dimasukkan, menginputkan angkanya satu per satu, lalu komputer akan menyisir dan mengelompokkan mana yang ganjil dan mana yang genap secara otomatis.

Di sini gua ngoding pake Visual Studio Code (VS Code). Buat kalian yang mau pake code editor atau IDE lain seperti Dev-C++ atau Code::Blocks, silakan saja karena kodenya bakalan tetap sama kok. Yuk, langsung disimak!


👨‍💻 Copy Source Code C++ Berikut:

Silakan buat file baru bernama ganjil_genap_array.cpp, lalu salin seluruh baris kode standar C++ modern di bawah ini:

#include <iostream>
#include <iomanip> // Library untuk mengatur jarak spasi output (setw)

using namespace std;

int main() {
    // Deklarasi array Nilai dengan batas maksimal 10 elemen, dan variabel kontrol
    int Nilai[10], i, N;

    cout << "=================================================" << endl;
    cout << "   PROGRAM INPUT ARRAY & MEMILAH GANJIL GENAP   " << endl;
    cout << "=================================================" << endl;

    // 1. Proses menentukan jumlah elemen array
    cout << "Masukkan Banyak Bilangan (Maks 10): ";
    cin >> N;
    cout << endl;

    // 2. Perulangan untuk mengambil input dari keyboard ke dalam array
    for (i = 0; i < N; i++) {
        cout << "Masukkan Elemen ke-" << i << " = ";
        cin >> Nilai[i];
    }

    // 3. Menampilkan kembali semua elemen yang sudah disimpan
    cout << "\n-------------------------------------------------";
    cout << "\nElemen yang dimasukkan = ";
    for (i = 0; i < N; i++) {
        cout << setw(3) << Nilai[i]; // setw(3) membuat jarak otomatis tiap angka sebesar 3 ketukan
    }
    cout << endl;

    // 4. Menyisir array dan menampilkan Bilangan Ganjil saja
    cout << "Menampilkan Bilangan Ganjil : ";
    for (i = 0; i < N; i++) {
        // Jika sisa bagi dengan 2 adalah 1, maka bilangan ganjil
        if (Nilai[i] % 2 != 0) { 
            cout << setw(3) << Nilai[i];
        }
    }

    // 5. Menyisir array dan menampilkan Bilangan Genap saja
    cout << "\nMenampilkan Bilangan Genap  : ";
    for (i = 0; i < N; i++) {
        // Jika sisa bagi dengan 2 adalah 0, maka bilangan genap
        if (Nilai[i] % 2 == 0) {
            cout << setw(3) << Nilai[i];
        }
    }
    cout << "\n=================================================" << endl;

    return 0;
}

Hasil Output Console Terminal:

=================================================
PROGRAM INPUT ARRAY & MEMILAH GANJIL GENAP
=================================================
Masukkan Banyak Bilangan (Maks 10): 4

Masukkan Elemen ke-0 = 15
Masukkan Elemen ke-1 = 8
Masukkan Elemen ke-2 = 23
Masukkan Elemen ke-3 = 42

-------------------------------------------------
Elemen yang dimasukkan = 15 8 23 42
Menampilkan Bilangan Ganjil : 15 23
Menampilkan Bilangan Genap : 8 42
=================================================

--------------------------------
Process exited after 8.42 seconds
Press any key to continue . . .

💡 Bedah Fitur Rahasia: Apa Fungsi <iomanip> dan setw()?

Kalau kalian perhatikan kodingan di atas, ada baris #include <iomanip> di paling atas dan perintah setw(3) di dalam struktur perulangan *output*. Ini trik estetik yang jarang dibahas di tutorial dasar, lho!

  • iomanip adalah singkatan dari Input Output Manipulation. Library ini dipakai kalau kita mau memanipulasi tampilan teks di terminal.
  • setw(3) adalah singkatan dari Set Width (mengatur lebar). Perintah ini berfungsi memesan ruang sebanyak 3 karakter untuk setiap angka yang dicetak. Efeknya, susunan baris angka ganjil dan genap kalian di terminal bakal otomatis rapi, sejajar, dan ngga dempet-dempetan meskipun jumlah digit angkanya berbeda!
  • Logika Pengkondisian: Untuk mencari ganjil, kita gunakan kondisi Nilai[i] % 2 != 0 (tidak habis dibagi dua). Sedangkan untuk mencari genap, kita gunakan Nilai[i] % 2 == 0 (habis dibagi dua).

Kesimpulan

Dengan membuat program penentu ganjil genap berbasis input array seperti ini, kalian sudah berhasil menguasai tiga konsep algoritma sekaligus dalam satu waktu: manajemen alokasi memori array, kontrol perulangan dinamis (for loop), dan manipulasi tampilan visual terminal.

Oke, sekian studi kasus menarik kali ini. Silakan kalian copas source code di atas dan jalankan di laptop masing-masing. Jika ada error saat proses kompilasi atau ada baris logika yang masih bikin kalian penasaran, langsung saja tanyakan melalui Kolom Komentar di bawah ya. Kita diskusikan bareng!

Wassalam.

🔄 Kuasai Senjata Looping: Mengenal Macam Perulangan C++

Di program tadi kita udah pakai perintah 'for' berulang kali buat mondar-mandir nyari data di dalam array. Tapi tahu gak sih, kapan kita harus pakai 'for' dan kapan kita lebih cocok pakai 'while' atau 'do-while' di C++?

Lanjut: Kupas Tuntas Perulangan C++ →

Posting Komentar untuk "Tutorial C++ #5: Studi Kasus Menentukan Bilangan Ganjil atau Genap Pada Elemen Array"