C++ Academy · Pelajaran

Membina CLI Kalkulator Ringkas

Bina kalkulator baris perintah yang menghuraikan operator dan menilai ungkapan.

Pelajaran 1 daripada 414 langkah

Membina CLI Kalkulator Ringkas ialah pelajaran C++ Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran C++ Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus C++ Academy merangkumi sejumlah 4 pelajaran.

Matlamat Projek

Bina kalkulator baris perintah yang membaca ungkapan seperti 3 + 4 dan mencetak hasilnya. Kita akan mengekalkannya ringkas tetapi tersusun dengan baik.

Pengepala Diperlukan

Kita memerlukan iostream untuk input/output dan string untuk masukan.

#include <iostream>
#include <string>
#include <sstream>

Rangka Gelung Utama

Baca satu baris, huraikannya, kira hasilnya dan cetak. Keluar apabila EOF dicapai.

int main() {
    std::string line;
    while (std::getline(std::cin, line)) {
        if (line == "quit") break;
        double result = evaluate(line);
        std::cout << "= " << result << "\n";
    }
}

Menghuraikan dengan stringstream

Untuk dua operan dan satu operator, pemecahan token menggunakan stringstream adalah ringkas dan kukuh.

double evaluate(const std::string& line) {
    std::stringstream ss(line);
    double a, b;
    char op;
    ss >> a >> op >> b;
    return apply(op, a, b);
}

Gunakan Operator

Gunakan switch pada aksara 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;
    }
}

Pengendalian Ralat

Bagaimana jika pengguna menaip sesuatu yang tidak sah? Semak keadaan strim dan laporkan mesej yang mudah difahami.

if (!(ss >> a >> op >> b)) {
    std::cout << "Invalid input\n";
    return 0;
}

Pembahagian dengan Sifar

Kendalikan pembahagian dengan sifar secara jelas. Cetak ralat atau lemparkan pengecualian — pilih yang sesuai dengan reka bentuk anda.

if (op == '/' && b == 0) {
    throw std::runtime_error("division by zero");
}

Menambah Lebih Banyak Operator

Lanjutkan switch untuk menyokong lebih banyak operasi: %, ^ untuk kuasa, atau fungsi bernama seperti sqrt.

Mengekalkan Keadaan

Mahukan jumlah terkumpul? Simpan hasil terakhir dan benarkan pengguna memulakan ungkapan dengan +.

double last = 0;
// if first token is an operator, use `last` as the first operand

Menggilap Pengalaman Pengguna

Cetak gesaan sebelum setiap masukan, terima quit atau EOF untuk keluar, dan abaikan baris kosong.

Melebihi Dua Operan

Untuk ungkapan berbilang operan seperti 3 + 4 * 2, anda memerlukan penghuraian ungkapan. Algoritma shunting-yard ialah pendekatan piawai.

Menguji Kalkulator

Salurkan masukan daripada fail untuk menjalankan ujian dengan cepat.

echo "3 + 4\n10 / 2" | ./calc

Semakan Ringkas

Kemudahan pustaka piawai manakah yang sesuai untuk menghuraikan token yang dipisahkan oleh ruang seperti 3 + 4?

Rumusan

Kalkulator CLI yang kecil menunjukkan input/output, penghuraian dengan stringstream dan penghantaran berasaskan switch. Lanjutkannya dengan pengendalian ralat, lebih banyak operator, keadaan dan akhirnya penghuraian ungkapan.

Percuma untuk bermula

Pelajari C++ dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
51
Pelajaran
203

Soalan Lazim

Adakah pelajaran “Membina CLI Kalkulator Ringkas” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran C++ Academy, termasuk “Membina CLI Kalkulator Ringkas”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus C++ Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Membina CLI Kalkulator Ringkas”?

Bina kalkulator baris perintah yang menghuraikan operator dan menilai ungkapan. Anda berlatih C++ Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan C++ Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran C++ Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.

Berapa lamakah pelajaran “Membina CLI Kalkulator Ringkas” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran C++ Academy ini?

Ya. Setiap pelajaran C++ Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Membina CLI Kalkulator Ringkas
  2. Membaca dan Menulis Fail CSV
  3. Permainan Meneka Nombor
  4. Pengira Kekerapan Perkataan
← Kembali ke C++ Academy