-3

私はプログラミングの初心者で、インターネットで見つけた 1 つの演習を行っています。

3 つの入力を取り、2 つの数値を加算、減算、乗算、または除算する電卓を作成します。1 番目と 3 番目の入力は int です。2 番目は char です。

  1. ユーザー入力に応じて実行する操作を把握するには、switch ステートメントを使用します。
  2. 少なくとも 1 つの関数を使用します。
  3. 入力が無効かどうかをプログラムに再度尋ねさせます。
  4. 完了後にプログラムをループさせ、完全に終了する前に複数回使用できるようにします。

これが私のコードです:

#include <iostream>

using namespace std;

int main()
{
int number1 , number2;
char operator_;
cout << "enter first number:" << endl;
cin >> number1;

cout << "enter operator:";
cin >> operator_;

cout << "enter second number:" << endl;
cin >> number2;

switch (operator_)
{
case '+':
    cout << " the sum is " << number1 + number2;
    break;

case '-':
    cout << "the difference is " <<number1 - number2;
    break;

case '*':
    cout <<  "the product is " << number1 * number2;
    break;

case '/':
    cout << "the quotient is " << number1 / number2;
    break;

default:
    cout << "Invalid Operation";
}

return 0;
}

タスク 3 と 4 を達成するにはどうすればよいですか? while ループを勉強しましたが、それが自分のプログラムにどのように役立つかわかりません。ありがとう

4

2 に答える 2

2

関数内のすべてのコードの外側に無限ループを追加するだけmainで、最後にユーザーに続行するかどうか尋ねます。そうでない場合breakは、ループから外れます。

于 2013-09-22T00:38:00.203 に答える
1

必要に応じて、両方を一度に行うこともできます。

最初にメイン関数の名前を変更し、do_calculation のような名前にします。

ここで、新しいメイン関数を作成します。これには、ユーザーが再試行するかどうかを尋ねるループが含まれており、作成した do_calculation 関数が呼び出されます。このようなもの

int main()
{
    char try_again;
    do
    {
        do_calculation();
        cout << "Do you want to try again (answer Y or N) ";
        cin >> try_again;
    }
    while (try_again == 'y' || try_again == 'Y');
}
于 2013-09-22T00:38:00.663 に答える