首页 > 解决方案 > C++:构建多功能计算器

问题描述

我正在尝试用 C++ 构建一个计算器。我是该计划的新手,必须为学校作业做这个,很抱歉我的无知。英语也是我的第二语言,所以如果我没有多大意义,请原谅。

假设我有两个整数 A 和 B,用户必须为其分配一个值来进行加法、减法等操作。然后我如何才能添加第三个整数(比如说 X),而不会在我运行程序?因此,不必为 A、B 和 X 键入一个值,它只要求为 X 键入一个值?

例如 4 + 5 = 9,但计算器也可以平方数,那么我如何让用户选择只填写 4 平方 = 16,同时仍然保留让我加减两个数字的前代码?

也许看到代码会帮助理解我的意思?对不起,如果我感到困惑。

#include <iostream.h>
#include <conio.h>

int main ()
{
    cout << "Calculator [v.1.0]" << endl;
    cout << "(c) 2021 <Chayenne van der Erf>" << endl << endl;

    cout << "Kies een bewerking en druk op Enter:" << endl;
    cout << "1. Optellen              2. Aftrekken" << endl;
    cout << "3. Vermenigvuldigen      4. Delen" <<endl;
    cout << "5. Kwadraat              6. Worteltrekken" <<endl;
    cout << "7. Reciproke             8. Logarithme" <<endl;
    cout << "0. Exit" << endl << endl;

    int Bewerking;
    cout << "Bewerking: ";
    cin >> Bewerking;

    cout << "" << endl;

    switch (Bewerking) {
    case 1:
        cout << "+";
        break;
    case 2:
        cout << "-";
        break;
    case 3:
        cout << "*";
        break;
    case 4:
        cout << "/";
        break;

    default: "Invalid Number";
    }

    cout << "" << endl << endl;
    double A, B;

    cout << "Enter een waarde: ";
    cin >> A;
    cout << "Enter een waarde: ";
    cin >> B;

    int antwoord;
    if (Bewerking == 1) {antwoord = A + B;}
    else if (Bewerking == 2 ) {antwoord = A - B;}
    else if (Bewerking == 3) {antwoord = A * B;}
    else if (Bewerking == 4) {antwoord = A / B;}

    cout << "" << endl;
    cout << "= " << antwoord << endl;

    getch();
    return 0;
}

标签: c++

解决方案


使变量和读数以操作为条件。

示例大纲:

if (operation takes one input)
{
    double x;
    cin >> x;
    Calculate result...
}
else if (operation takes two inputs)
{
    double x, y;
    cin >> x >> y;
    Calculate result...
}
else if (operation takes three inputs)
{
    double x, y, z;
    cin >> x >> y >> z;
    Calculate result...
}

Print result...


推荐阅读