Membangun CLI Kalkulator Sederhana
Bangun kalkulator baris perintah yang mengurai operator dan mengevaluasi ekspresi
Membangun CLI Kalkulator Sederhana adalah pelajaran C++ Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar C++ Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus C++ Academy mencakup 4 pelajaran total.
Tujuan Proyek
Buat kalkulator baris perintah yang membaca ekspresi seperti 3 + 4 dan mencetak hasilnya. Kita akan membuatnya minimal, tetapi tetap terstruktur dengan baik.
Header yang Diperlukan
Kita memerlukan iostream untuk masukan/keluaran dan string untuk masukan.
#include <iostream>
#include <string>
#include <sstream>Kerangka Perulangan Utama
Baca satu baris, urai, hitung, lalu cetak. Keluar saat EOF.
int main() {
std::string line;
while (std::getline(std::cin, line)) {
if (line == "quit") break;
double result = evaluate(line);
std::cout << "= " << result << "\n";
}
}Penguraian dengan stringstream
Untuk dua operan dan satu operator, tokenisasi dengan stringstream bersifat sederhana dan andal.
double evaluate(const std::string& line) {
std::stringstream ss(line);
double a, b;
char op;
ss >> a >> op >> b;
return apply(op, a, b);
}Menerapkan Operator
Gunakan switch pada karakter operator.
double apply(char op, double a, double b) {
switch (op) {
case '+': return a + b;
case '-': return a - b;
case '*': return a * b;
case '/': return b != 0 ? a / b : 0;
default: return 0;
}
}Penanganan Kesalahan
Bagaimana jika pengguna mengetik sesuatu yang tidak valid? Periksa keadaan stream dan tampilkan pesan yang mudah dipahami.
if (!(ss >> a >> op >> b)) {
std::cout << "Invalid input\n";
return 0;
}Pembagian dengan Nol
Tangani pembagian dengan nol secara eksplisit. Cetak kesalahan atau lakukan lemparan—pilih yang sesuai dengan desain Anda.
if (op == '/' && b == 0) {
throw std::runtime_error("division by zero");
}Menambahkan Operator Lain
Perluas switch untuk mendukung lebih banyak operasi: %, ^ untuk perpangkatan, atau fungsi bernama seperti sqrt.
Mempertahankan Keadaan
Ingin memiliki total berjalan? Simpan hasil terakhir dan izinkan pengguna memulai ekspresi dengan +.
double last = 0;
// if first token is an operator, use `last` as the first operandMenyempurnakan UX
Tampilkan petunjuk sebelum setiap masukan, terima quit atau EOF untuk keluar, dan abaikan baris kosong.
Lebih dari Dua Operan
Untuk ekspresi dengan banyak operan seperti 3 + 4 * 2, Anda memerlukan pengurai ekspresi. Algoritme shunting-yard merupakan pendekatan standar.
Menguji Kalkulator
Alirkan masukan dari berkas untuk menguji dengan cepat.
echo "3 + 4\n10 / 2" | ./calcPemeriksaan Singkat
Fasilitas pustaka standar apa yang praktis untuk mengurai token yang dipisahkan spasi seperti 3 + 4?
Ringkasan
Kalkulator CLI kecil menunjukkan masukan/keluaran, penguraian dengan stringstream, dan pengiriman berbasis switch. Perluas dengan penanganan kesalahan, lebih banyak operator, keadaan, dan pada akhirnya pengurai ekspresi.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Membangun CLI Kalkulator Sederhana” gratis?
Ya — teks lengkap “Membangun CLI Kalkulator Sederhana” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus C++ Academy, upgrade ke CoddyKit PRO. Kursus C++ Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Membangun CLI Kalkulator Sederhana”?
Bangun kalkulator baris perintah yang mengurai operator dan mengevaluasi ekspresi Kamu berlatih C++ Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai C++ Academy?
Tidak diperlukan pengalaman sebelumnya. C++ Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Membangun CLI Kalkulator Sederhana” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran C++ Academy ini?
Ya. Setiap pelajaran C++ Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Membangun CLI Kalkulator Sederhana
- Membaca dan Menulis File CSV
- Permainan Tebak Bilangan
- Penghitung Frekuensi Kata