Panduan Membuat Kalkulator Sederhana dengan C++

Membuat kalkulator adalah salah satu proyek pertama yang sangat direkomendasikan bagi siapa saja yang baru memulai belajar bahasa pemrograman C++. Proyek ini memungkinkan Anda untuk memahami konsep dasar Input/Output (I/O), penggunaan variabel, struktur kondisional (if/else atau switch-case), serta operasi aritmatika dasar.

Ilustrasi Ikon Kalkulator Sederhana

Langkah 1: Persiapan Dasar dan Struktur Program

Untuk memulai, kita hanya memerlukan beberapa pustaka standar. Pada kalkulator sederhana yang hanya melakukan operasi dasar (tambah, kurang, kali, bagi), kita membutuhkan library iostream untuk input/output dan mungkin cmath jika ingin melibatkan fungsi matematika yang lebih kompleks, namun untuk dasar, iostream sudah cukup.

Struktur dasar C++ dimulai dengan fungsi main(). Di sini kita akan mendeklarasikan variabel untuk menyimpan dua angka (operand) dan variabel untuk menyimpan hasil serta pilihan operator.


#include <iostream>

using namespace std;

int main() {
    // Deklarasi variabel
    double angka1, angka2, hasil;
    char operasi;

    cout << "=== Kalkulator Sederhana C++ ===\n";
    
    // Input angka pertama
    cout << "Masukkan angka pertama: ";
    cin >> angka1;

    // Input operator
    cout << "Pilih operasi (+, -, *, /): ";
    cin >> operasi;

    // Input angka kedua
    cout << "Masukkan angka kedua: ";
    cin >> angka2;

    // ... (lanjutan logika di langkah berikutnya)

    return 0;
}
            

Langkah 2: Logika Operasi Menggunakan Switch-Case

Setelah mendapatkan semua input, langkah selanjutnya adalah menentukan operasi apa yang harus dilakukan. Struktur switch-case sangat ideal untuk menangani beberapa pilihan operator dengan jelas dan efisien.

Kita akan menambahkan blok switch setelah input angka kedua:


    switch (operasi) {
        case '+':
            hasil = angka1 + angka2;
            cout << "Hasil: " << angka1 << " + " << angka2 << " = " << hasil << endl;
            break;
        case '-':
            hasil = angka1 - angka2;
            cout << "Hasil: " << angka1 << " - " << angka2 << " = " << hasil << endl;
            break;
        case '*':
            hasil = angka1 * angka2;
            cout << "Hasil: " << angka1 << " * " << angka2 << " = " << hasil << endl;
            break;
        case '/':
            // Pengecekan pembagian dengan nol
            if (angka2 != 0) {
                hasil = angka1 / angka2;
                cout << "Hasil: " << angka1 << " / " << angka2 << " = " << hasil << endl;
            } else {
                cout << "Error: Tidak bisa dibagi dengan nol!" << endl;
            }
            break;
        default:
            cout << "Operator tidak valid." << endl;
            break;
    }
            

Langkah 3: Penanganan Kesalahan Penting (Error Handling)

Dalam membuat kalkulator yang baik, kita harus mengantisipasi kesalahan pengguna. Dua kesalahan paling umum adalah:

  1. Memasukkan karakter (bukan angka) saat program mengharapkan angka.
  2. Melakukan pembagian dengan nol (Division by Zero).

Seperti yang terlihat pada contoh kode di atas, kita telah menyertakan pengecekan if (angka2 != 0) di dalam case '/' untuk mencegah program crash akibat pembagian dengan nol. Untuk penanganan input yang tidak valid (misalnya user mengetik 'lima' alih-alih '5'), ini biasanya ditangani dengan lebih lanjut menggunakan fungsi validasi input atau struktur try-catch, tetapi untuk versi sederhana, struktur default pada switch sudah memberikan umpan balik dasar.

Kode Lengkap Kalkulator C++

Berikut adalah gabungan seluruh kode agar Anda dapat langsung mengompilasinya:


#include <iostream>
#include <iomanip> // Untuk format output (opsional)

using namespace std;

int main() {
    double angka1, angka2, hasil;
    char operasi;

    cout << "=================================\n";
    cout << "=== Kalkulator Sederhana C++ ===\n";
    cout << "=================================\n";
    
    cout << "Masukkan angka pertama: ";
    if (!(cin >> angka1)) {
        cout << "Input angka tidak valid." << endl;
        return 1; 
    }

    cout << "Pilih operasi (+, -, *, /): ";
    cin >> operasi;

    cout << "Masukkan angka kedua: ";
    if (!(cin >> angka2)) {
        cout << "Input angka tidak valid." << endl;
        return 1; 
    }

    cout << fixed << setprecision(2); // Mengatur output menjadi 2 desimal

    switch (operasi) {
        case '+':
            hasil = angka1 + angka2;
            cout << "\nHasil: " << angka1 << " + " << angka2 << " = " << hasil << endl;
            break;
        case '-':
            hasil = angka1 - angka2;
            cout << "\nHasil: " << angka1 << " - " << angka2 << " = " << hasil << endl;
            break;
        case '*':
            hasil = angka1 * angka2;
            cout << "\nHasil: " << angka1 << " * " << angka2 << " = " << hasil << endl;
            break;
        case '/':
            if (angka2 != 0) {
                hasil = angka1 / angka2;
                cout << "\nHasil: " << angka1 << " / " << angka2 << " = " << hasil << endl;
            } else {
                cout << "\nError: Tidak bisa dibagi dengan nol!" << endl;
            }
            break;
        default:
            cout << "\nOperator '" << operasi << "' tidak dikenali." << endl;
            break;
    }

    return 0;
}
            

Dengan mengikuti langkah-langkah di atas, Anda berhasil membuat kalkulator fungsional dasar di C++. Ini adalah fondasi yang baik sebelum melangkah ke kalkulator berbasis GUI atau yang lebih kompleks.