Problem bei Whileschleife
-
Hallo!
Ich bin absoluter C++ Anfänger und wollte fragen warum mich die Whileschleife im Screenshot nicht mehr raus lässt wenn ich x oder y eingebe.
<a href="http://www.directupload.net" target="_blank"><img src="http://fs5.directupload.net/images/161121/vz2ce36f.png" title="Kostenlos Bilder und Fotos hochladen"></a>
Wenn ich die != in == kann ich ewig in der Schleife bleiben wenn ich x oder y eingebe. Doch wenn ich != lasse dann geht er immer in die Whileschleife. Egal ob ich davor x oder y eingegeben habe.
Was mache ich falsch?
Danke für eure Hilfe!!!
Gruß
-
Tja, wenn du doch einfach den Code eingefügt hättest...
-
#include <iostream>
using namespace std;
int main (void)
{
char pw;
string passwortalt = "test";
string passwortneu;
string passwortneu2;
string passworteingabe;cout << "Willkommen in diesem kleinen Programm" << endl;
cout << "Geben sie x fuer ein neues Passwort setzen ein oder y fuer den log in: ";cin >> pw;
while(pw!='x'||pw!='y'){
cout << "Machen sie bitte eine gueltige Eingabe!" << endl;
cout << "Ihre Wahl: ";
cin >> pw;}
if(pw=='x'||pw=='y'){
if(pw=='x'){
cout << "Geben sie das alte Passwort ein: ";
cin >> passwortalt;
cout << endl;cout << "Geben sie das neue Passwort ein: ";
cin >> passwortneu;
cout << endl;cout << "Geben sie das neue Passwort noch einmal ein: ";
cin >> passwortneu2;
cout << endl;
if(passwortneu==passwortneu2){
cout << "Passwort erfolgreich geaendert!";
cout << endl;}
else{
cout << "Passwort wurde nicht geändert!" << endl;
cout << "Programm wird mit dem nächste Tastendruck beendet!";}}
else{
cout << "Passwort eingeben: ";
cin >> passworteingabe;
if(passworteingabe==passwortalt){
cout << "Programm wird geladen!";
}
else{
cout << "Programm wird geschlossen!";
}}
}
cin.sync();
cin.get();
return 0;
}**********************************
Hab alles nochmal komplett rein. Nicht lachen
. Bin ja am lernen
Wenn ich diesen Code lade, dann komm ich egal was ich eingebe in die Whileschleife und diese lässt mich auch nicht mehr raus. Auch wenn ich x oder y eingebe....
-
manni66 schrieb:
Tja, wenn du doch einfach den Code eingefügt hättest...
Hab ich mir auch gedacht
Sorry
-
Welcher Wert kann denn gleichzeitig x und y sein?
-
Gleichzeitig gar keiner.
Wollte einfach ne While basteln die prüft ob in pw ein x steht oder ein y.
wenn das der Fall ist soll das "Hauptprogramm" ablaufen und wenn nicht soll er so lange fragen bis in pw eben x oder y steht.Vllt überreiße ich auch einfach irgendwas nicht
-
while(pw!='x'||pw!='y')
heißt doch:
Führe die Schleife aus, solange pw ungleich x oder pw ungleich y ist ...
pw ist aber immer ungleich x oder ungleich y ...
-
Boolsche Algebra und hier speziell das De Morgansche Gesetz:
-
Danke euch