Panduan Praktis: Membuat Kalkulator Sederhana di C++

Bahasa pemrograman C++ tetap menjadi fondasi kuat untuk pengembangan aplikasi yang memerlukan performa tinggi dan kontrol sistem yang detail. Salah satu proyek pemula terbaik untuk memahami konsep dasar seperti input/output (I/O), struktur kontrol (switch/case), dan fungsi adalah membuat kalkulator sederhana.

Kalkulator ini akan mampu melakukan empat operasi dasar: penjumlahan (+), pengurangan (-), perkalian (*), dan pembagian (/). Panduan ini akan memandu Anda langkah demi langkah, dari inisialisasi hingga kode sumber lengkap.

0.00 + - * 1 2 / = Simple Calc

Ilustrasi visual kalkulator sederhana.

Prasyarat dan Persiapan Lingkungan

Sebelum menulis kode, pastikan Anda telah menginstal kompiler C++ yang berfungsi dengan baik di sistem Anda. Compiler yang umum digunakan termasuk GCC (GNU Compiler Collection) atau Clang. Untuk lingkungan pengembangan (IDE), Visual Studio Code dengan ekstensi C/C++ atau IDE penuh seperti Code::Blocks atau Visual Studio akan sangat membantu.

Langkah 1: Struktur Dasar Program C++

Setiap program C++ dimulai dengan menyertakan pustaka yang diperlukan dan fungsi utama (`main`). Untuk input/output, kita akan menggunakan ``.


#include <iostream>

int main() {
    // Di sini kode utama kita akan berada
    return 0;
}
            

Langkah 2: Deklarasi Variabel

Kita memerlukan variabel untuk menyimpan dua angka masukan (operand) dan variabel untuk menyimpan pilihan operasi yang diinginkan pengguna. Kita akan menggunakan tipe data `double` untuk memungkinkan input angka desimal.


double angka1, angka2, hasil;
char operasi;
            

Langkah 3: Mengambil Input dari Pengguna

Program harus meminta pengguna untuk memasukkan dua angka dan operator yang ingin mereka gunakan.


std::cout << "--- Kalkulator Sederhana C++ ---\n";
std::cout << "Masukkan Angka Pertama: ";
std::cin >> angka1;

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

std::cout << "Masukkan Angka Kedua: ";
std::cin >> angka2;
            

Langkah 4: Menggunakan Struktur Kontrol `switch`

Struktur `switch` adalah cara yang efisien untuk menangani berbagai kemungkinan operasi berdasarkan input karakter `operasi`.


switch(operasi) {
    case '+':
        hasil = angka1 + angka2;
        std::cout << "Hasil: " << angka1 << " + " << angka2 << " = " << hasil << std::endl;
        break;

    case '-':
        hasil = angka1 - angka2;
        std::cout << "Hasil: " << angka1 << " - " << angka2 << " = " << hasil << std::endl;
        break;

    case '*':
        hasil = angka1 * angka2;
        std::cout << "Hasil: " << angka1 << " * " << angka2 << " = " << hasil << std::endl;
        break;

    case '/':
        // Penanganan khusus untuk pembagian nol
        if (angka2 != 0) {
            hasil = angka1 / angka2;
            std::cout << "Hasil: " << angka1 << " / " << angka2 << " = " << hasil << std::endl;
        } else {
            std::cout << "Error: Tidak bisa membagi dengan nol!" << std::endl;
        }
        break;

    default:
        std::cout << "Error: Operator tidak valid." << std::endl;
        break;
}
            

Penting untuk selalu menyertakan penanganan kasus pembagian dengan nol (`angka2 != 0`). Ini menunjukkan praktik pengkodean yang baik dan mencegah program crash.

Langkah 5: Kode Sumber Lengkap

Menggabungkan semua langkah di atas akan menghasilkan program kalkulator sederhana yang fungsional. Anda dapat menyimpan kode ini sebagai berkas misalnya `kalkulator.cpp` dan mengkompilasinya menggunakan kompiler Anda.


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

int main() {
    // Mengatur output desimal agar lebih rapi
    std::cout << std::fixed << std::setprecision(2);

    double angka1, angka2, hasil;
    char operasi;

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

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

    std::cout << "Masukkan Angka Kedua: ";
    if (!(std::cin >> angka2)) {
        std::cerr << "Input tidak valid." << std::endl;
        return 1;
    }

    switch(operasi) {
        case '+':
            hasil = angka1 + angka2;
            std::cout << "\nHasil: " << angka1 << " + " << angka2 << " = " << hasil << std::endl;
            break;

        case '-':
            hasil = angka1 - angka2;
            std::cout << "\nHasil: " << angka1 << " - " << angka2 << " = " << hasil << std::endl;
            break;

        case '*':
            hasil = angka1 * angka2;
            std::cout << "\nHasil: " << angka1 << " * " << angka2 << " = " << hasil << std::endl;
            break;

        case '/':
            if (angka2 != 0) {
                hasil = angka1 / angka2;
                std::cout << "\nHasil: " << angka1 << " / " << angka2 << " = " << hasil << std::endl;
            } else {
                std::cout << "\nError: Pembagian dengan nol tidak diizinkan." << std::endl;
            }
            break;

        default:
            std::cout << "\nError: Simbol operasi '" << operasi << "' tidak dikenal." << std::endl;
            break;
    }

    std::cout << "===================================\n";
    return 0;
}
            

Kompilasi dan Eksekusi

Setelah kode tersimpan (misalnya sebagai kalkulator.cpp), buka terminal atau Command Prompt Anda. Jika Anda menggunakan GCC/G++, perintah kompilasinya adalah:

g++ kalkulator.cpp -o kalkulator

Ini akan menghasilkan file eksekusi bernama kalkulator (atau kalkulator.exe di Windows). Untuk menjalankannya:

./kalkulator

Pengembangan Lebih Lanjut

Kalkulator sederhana ini adalah titik awal yang sangat baik. Untuk meningkatkan fungsionalitas, Anda dapat menambahkan beberapa fitur berikut:

Membuat kalkulator di C++ mengajarkan dasar-dasar logika pemrograman, penanganan input, dan penggunaan struktur percabangan, keterampilan fundamental yang wajib dikuasai oleh setiap programmer C++.