私の大学では、whileループをカバーしていないので、私は前に試してみたいと思っていましたが、問題を抱えています。異なる機能を実行したいユーザの入力に基づいて、Aは加算を実行し、Bは減算を行い、Cはプログラムを終了する。
私が書いたプログラムは、ユーザーが入力した内容に関係なく、これらの機能を順番に実行し、正しく動作させる方法は不明です。C++ do whileループのアドバイス
アドバイスをいただければ幸いです。
私の大学では、whileループをカバーしていないので、私は前に試してみたいと思っていましたが、問題を抱えています。異なる機能を実行したいユーザの入力に基づいて、Aは加算を実行し、Bは減算を行い、Cはプログラムを終了する。
私が書いたプログラムは、ユーザーが入力した内容に関係なく、これらの機能を順番に実行し、正しく動作させる方法は不明です。C++ do whileループのアドバイス
アドバイスをいただければ幸いです。
注意すべき事項ユーザーは選択肢の文字を入力しているので、userChoiceを文字にします。この場合、入力検証のためにdo-whileがどのように使用されているかに注目してください。私は、ステートメントの終わりにセミコロンで余分なwhileループを変更しました。あなたはifとelse ifを "menu driven program"というスイッチで置き換えることができます。ここにあなたが望む作業プログラムがあります。あなたは全体の条件文の周りのDO-しばらくたくない場合は、それはC.
ない間 "#include <iostream>
#include <string>
using namespace std;
int main()
{
char userChoice;
int vaulue1;
int vaulue2;
int addtionValue;
int subtractionValue;
cout << "Choice A: will preform an addition" << endl;
cout << "Choice B: will preform a subtraction" << endl;
cout << "Choice C: will quit\n" << endl;
do
{
cout << "Enter your choice\n" << endl;
cin >> userChoice;
} while(userChoice != 'A' && userChoice != 'B' && userChoice != 'C');
if(userChoice == 'A')
{
cout << "Addition\n" << endl;
cout << "Please enter the first value you want to add\n" << endl;
cin >> vaulue1;
cout << "Please enter the second value you want to add\n" << endl;
cin >> vaulue2;
addtionValue = vaulue1 + vaulue2;
cout << "The addtion answer is " << addtionValue << endl;
}
else if(userChoice == 'B')
{
cout << "Subtraction\n" << endl;
cout << "Please enter the first value you want to subtract\n" << endl;
cin >> vaulue1;
cout << "Please enter the second value you want to subtract\n" << endl;
cin >> vaulue2;
subtractionValue = vaulue1 - vaulue2;
cout << "The subtract answer is " << subtractionValue << endl;
}
else if(userChoice == 'C')
{
cout << "Exit ";
return -1;
}
return 0;
}
これを手伝ってくれてありがとうございました。私はdoの目的と混同されていたようですが、正しく実装する方法はありますか? 。 –
@ M.Stran94これがあなたの質問に答えたと思えば、この回答に合格とマークしてください。他の人もこれを使うことができます!問題ない! –
あなたが入力としてA
を入力しながら、あなたの方法はA
にここで行うよりも、ループしながら、あなたはより多くを持っている別の1
を与えることを望んでいる - それは「ケーススイッチを」使用することをお勧めします
あなたはそれを使用している正しい方法ではありません。これは入力検証として使用する必要があります。例えば:do {cout << "選択肢を入力" cin >> choice} while(choice!= 'A' || choice!= 'B' || choice!= C);メニューの一部ではない間違った選択項目を入力した場合、ユーザーに再度質問します –
最後に余分なwhileループとセミコロンもありますか? whileループではdo-whileではないセミコロンだけを入れます –