ERLEDIGT
JA
JA
ANTWORTEN
5
5
ZUGRIFFE
333
333
EMPFEHLEN
-
Guten Morgen und einen schönen 4. advend.
Ich habe ein Menü wo ich verschieden knotenpunkte habe und in einem knotenpunkt ist ein punkt wo ich mein name eingeben kann.
den name kann ich eingeben.
dann fragt er mich ab es auch mein name ist. (wegen tippfehler uns so )
und ich soll 'j' oder 'n' eingeben.
wen ich 'j' soll ich wieder zurück ins menü, was ja klappt.
und wenn ich 'n' eingebe soll er wieder die schleife ausfühen, so das ich den name noch mal eingeben kann.
so nun der fehler:
name eingebn
er stimmt nicht
ich gebe 'n' ein
und erbleibt einfach stehn ohne das ich was eingeben kann.
und ich habe jetzt wirklich lange experimentiert und versucht aber es kommt ja KEINE fehlermeldung und/oder wahrnmeldung so das ich nicht weiß was ich falsch gemacht habeCode :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
void name2 () { char ch=0; do { while (ch == 'n' || ch == 'N') { cout<<"Wie lautet dein Name?"; cin.get (noname,30); cout<<"ist dein name "<<noname<< " ? \n <J>a oder <N>nein"<<endl; cin.get(ch); cin.get(ch); // damit die eingabe forderung umgangen wird (\n oder endl) cin.clear(); } }while (ch != 'j' && ch != 'J'); }
also meine frage was ab ich da falsch gemacht oder was kann ich ändern
-
Hey und schönen 4.Advent

Ehm...ich finde, dass das ein bisschen zu doppel gemoppelt ist
Schreib es einfach so wie folgt anstatt mit der weiteren inneren while-Schleife:
Code cpp:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
void name2 () { char ch=0; do { cout<<"Wie lautet dein Name?"; cin.get (noname,30); cout<<"ist dein name "<<noname<< " ? \n <J>a oder <N>nein"<<endl; cin.get(ch); cin.clear(); }while (ch != 'j' && ch != 'J'); }
Ich denke jetzt müsste es klappen. Versuch es mal
Geändert von XTicTacX (18.12.11 um 12:47 Uhr)
Gebe niemals auf und überarbeite deinen Code immer und immer wieder ;) - C++ das ganze Leben lang :)
-
Hi
also, wenn das wirklich so im Programm steht, kann man den Namen überhaupt nicht eingeben.
Außer eventuell durch grausige Pointerfehler anderswo...
Du hast die Schleifen einfach falsch angewendet.
Besser so:
Code cpp:1 2 3 4 5 6 7 8 9 10 11 12 13
void name2 () { char ch = 0; do { cout<<"Wie lautet dein Name?"; cin.get (noname,30); cout<<"ist dein name "<<noname<< " ? \n <J>a oder <N>nein"<<endl; cin.get(ch); cin.get(ch); // damit die eingabe forderung umgangen wird (\n oder endl) cin.clear(); }while (ch != 'j' && ch != 'J'); }
Gruß
xtictacx: Warst zwar schneller, aber das && ist schon richtig
Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
Gebe niemals auf und überarbeite deinen Code immer und immer wieder ;) - C++ das ganze Leben lang :)
-
ah ok das war also ein denk fehler meinerseits
so jetzt geändert und es klappt
aber @XTicTacX wenn ich in deinem beispiel ein || mache komme ich nicht aus der schleife raus
aber trotzdem danke
-
Gebe niemals auf und überarbeite deinen Code immer und immer wieder ;) - C++ das ganze Leben lang :)
Ähnliche Themen
-
Mysql Update macht nichts
Von Pascal Jakoby im Forum PHPAntworten: 9Letzter Beitrag: 10.10.11, 21:30 -
mod_rewrite macht nichts?!
Von cofter im Forum Hosting & WebserverAntworten: 12Letzter Beitrag: 01.04.08, 16:08 -
Probleme beim Kompilieren - Programm macht nichts
Von LadyMarion im Forum C/C++Antworten: 0Letzter Beitrag: 11.09.07, 11:07 -
pereg_replace / preg_match macht nichts
Von Microhome im Forum PHPAntworten: 2Letzter Beitrag: 21.08.07, 15:26 -
kleines Firefox ok - IE macht nichts Problem
Von benchmark im Forum Javascript & AjaxAntworten: 10Letzter Beitrag: 16.08.07, 04:47





Zitieren


Login






