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.
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;
}
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;
}
Dalam membuat kalkulator yang baik, kita harus mengantisipasi kesalahan pengguna. Dua kesalahan paling umum adalah:
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.
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.