私が今得ている問題は、最初はランダムなものを入力でき、それは正しく機能しますが、2回目の試行では間違った入力が行われることです。例: 最初にチェスを入力すると、もう一度やり直してくださいと表示されます。2番目の入力チェス チェスを受け入れてチェックを開き、hをデポジット額に入れ、エラーが発生して再試行します
case 1:
cout << "Checking (C) or Savings (S): enter your choice" << endl;
cin.get(choice);
//input validation
while(choice != 'c' && choice != 'C' && choice != 's' && choice != 'S')
{
cin.clear();
cin.ignore(100, '\n');
cout << "Invalid input. Try again: ";
cin.get(choice);
}
//deposit in checking
if (choice == 'c' || choice == 'C')
{
cout << "how much are you depositing: $" << endl; //get deposit
cin >> deposit;
while(!(cin >> deposit)) //make sure user input is valid
{
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(),'\n');
cout << "Invalid input. Try again: ";
}