C++ Logisches Oder

habe ein problem mit dem logischen oder und weiß nicht an was es liegt

habe es dann mit bool gemacht das geht aber ist natürlich anders besser finde ich.

hier ein auszug aus meinem programm







nochmal:

cout << " -------------------------------------------------------------------\n\n\n";
cout << " Wollen Sie gerne eine weitere Zahl hinzufuegen um einen andere \n";
cout << " Mittelwert zu brerechnen? (JA ein 'j' oder Nein ein 'n') \n\n";
cout << " >> ";
cin >> Antwort;

/*
bool test = 1;

if (Antwort == 'j')
test = 0;
if (Antwort == 'n')
test = 0;


if (test)
*/

if ((Antwort != 'j')||(Antwort != 'n' ))
{
cout << "\n";
cout << " ungueltige Eingabe. Bitte wiederholen Sie ihre Eingabe. \n" ;
cout << "\n";
goto nochmal;
}




vielen dank
 
Zuletzt bearbeitet:
AW: C++ Logisches Oder

Hallo,

in diesem Fall ist wohl das logische und (&&) notwendig, denn bei einer ungültigen Eingabe ist Antwort nicht 'n' und nicht 'j'.

Jirka
 
AW: C++ Logisches Oder

Hallo,

ich würde es etwa so machen (goto sollte mann immer vermeiden):

Code:
char antwort;

do{

  /* alles mögliche tun */

  cin >> antwort;
}while((antwort=='j') || (antwort=='n'));

/* alles mögliche tun */
mit anderen Worten: die do while Schleife wird solange wiederholt bis in antwort entweder ein 'n' oder ein 'j' steht.

Jirka
 
Top