2017-10-04 7 views
1

ループのオプション1と2をスイッチと見なすにはどうすればいいですか?プログラミングが難しく、これを解決するのが難しい。どんな助けも高く評価されます!C++ヘルプ:ループとスイッチ

#include <iostream> 
using namespace std; 

int main() 
{ 
    int userOption; 

    cout << "Hello user, what would you like to do?" << endl; 
    cout << "Option 1: Display a message" << endl; 
    cout << "Option 2: Perform a calculation" << endl; 
    cout << "Option 3: Exit program" << endl; 
    cin >> userOption; 

     switch (userOption) 
     { 
      char op; 
      int num1, num2; 

     case 1: 
      cout << "Welcome user!" << endl; 
      break; 
     case 2: 
      cout << "Enter + for addition, - for subtraction, * for multiplication or/for division: "; 
      cin >> op; 
      cout << "Enter two numbers: "; 
      cin >> num1 >> num2; 
      if (op == '+') 
       cout << num1+num2 << endl; 
      else if (op == '-') 
       cout << num1-num2 << endl; 
      else if (op == '*') 
       cout << num1*num2 << endl; 
      else if (op == '/') 
       cout << num1/num2 << endl; 
      break; 
     case 3: 
      cout << "Goodbye!" << endl; 
      return 0; 
      break; 
     default: 
      cout << "Please enter valid option!" << endl; 

     } 
    return 0; 
} 
+1

あなたは、whileループでコードを包む試したことがありますか? – frslm

+0

ループするケース1と2と、プログラムを終了するケース3があります。メニュー全体をループで囲むと、1と2がループし、3がプログラムを終了します。 – user4581301

+0

どこにループを挿入しますか?どの声明の前に? – Fernando

答えて

0

cinswitch例をカバーするためにwhileループを使用してください。あなたはループを継続するためにどのくらい決定する一つの追加の変数bContinueを使用して、以下のようなものを使用することができます。

シンプルで
int main() 
{ 
    int userOption; 

    cout << "Hello user, what would you like to do?" << endl; 
    cout << "Option 1: Display a message" << endl; 
    cout << "Option 2: Perform a calculation" << endl; 
    cout << "Option 3: Exit program" << endl; 
    bool bContinue = true; 
    while(bContinue) 
    { 
     cin >> userOption; 

     switch (userOption) 
     { 
      char op; 
      int num1, num2; 

     case 1: 
      cout << "Welcome user!" << endl; 
      break; 
     case 2: 
      cout << "Enter + for addition, - for subtraction, * for multiplication or/for division: "; 
      cin >> op; 
      cout << "Enter two numbers: "; 
      cin >> num1 >> num2; 
      if (op == '+') 
       cout << num1+num2 << endl; 
      else if (op == '-') 
       cout << num1-num2 << endl; 
      else if (op == '*') 
       cout << num1*num2 << endl; 
      else if (op == '/') 
       cout << num1/num2 << endl; 
      break; 
     case 3: 
      cout << "Goodbye!" << endl; 
      bContinue = false; 
      break; 
     default: 
      cout << "Please enter valid option!" << endl; 
     } 
    } 
    return 0; 
} 
0

、あなたはこのようなものを使用することができます

unsigned int selection = 25; 
// Print menu and input selection 
while (selection != 3) 
{ 
// Do stuff 
    // Print menu and input selection 
} 
0

whileループを使用します新しい変数を作成するとコードの一部が再フォーマットされるので、ループが開始するときにユーザーオプションが表示され続けるようにします

cout << "Hello user, what would you like to do?" << endl; 

bool bContinue = true; 
while(bContinue) 
{ 
    cout << "Option 1: Display a message" << endl; 
    cout << "Option 2: Perform a calculation" << endl; 
    cout << "Option 3: Exit program" << endl; 

    cin >> userOption; 

    switch (userOption) 
    { 
     char op; 
     int num1, num2; 

    case 1: 
     cout << "Welcome user!" << endl; 
     break; 
    case 2: 
     cout << "Enter + for addition, - for subtraction, * for multiplication or/for division: "; 
     cin >> op; 
     cout << "Enter two numbers: "; 
     cin >> num1 >> num2; 
     if (op == '+') 
      cout << num1+num2 << endl; 
     else if (op == '-') 
      cout << num1-num2 << endl; 
     else if (op == '*') 
      cout << num1*num2 << endl; 
     else if (op == '/') 
      cout << num1/num2 << endl; 
     break; 
    case 3: 
     cout << "Goodbye!" << endl; 
     bContinue = false; 
     break; 
    default: 
     cout << "Please enter valid option!" << endl; 
    } 
} 
return 0; 

このwi LLプログラムは、ユーザー

0

DO-whileループ、userOptionuserOptionコードuserOption != 3で、3と異なるつつ、それがループし続ける、3に等しくなりますときに停止します使用することをより見やすく。

例コード:

#include <iostream> 
using namespace std; 

int main() 
{ 
    int userOption; 

    cout << "Hello user, what would you like to do?" << endl; 
    do { 
     cout << "Option 1: Display a message" << endl; 
     cout << "Option 2: Perform a calculation" << endl; 
     cout << "Option 3: Exit program" << endl; 
     cin >> userOption; 

     switch (userOption) 
     { 
      char op; 
      int num1, num2; 

      case 1: 
       cout << "Welcome user!" << endl; 
       break; 
      case 2: 
       cout << "Enter + for addition, - for subtraction, * for multiplication or/for division: "; 
       cin >> op; 
       cout << "Enter two numbers: "; 
       cin >> num1 >> num2; 
       if (op == '+') 
       cout << num1+num2 << endl; 
       else if (op == '-') 
        cout << num1-num2 << endl; 
       else if (op == '*') 
        cout << num1*num2 << endl; 
       else if (op == '/') 
        cout << num1/num2 << endl; 
       break; 
      case 3: 
       cout << "Goodbye!" << endl; 
       break; 
      default: 
       cout << "Please enter valid option!" << endl; 

     } 
    } while(userOption != 3); 
    return 0; 
} 

出力:

Hello user, what would you like to do? 
Option 1: Display a message 
Option 2: Perform a calculation 
Option 3: Exit program 
2 
Enter + for addition, - for subtraction, * for multiplication or/for division: 
+ 
Enter two numbers: 
1 
1 
2 
Option 1: Display a message 
Option 2: Perform a calculation 
Option 3: Exit program 
3 
Goodbye!