Jaqueson Geschrieben 23. November 2005 Geschrieben 23. November 2005 Hi, ich will in einer do while schleife so lange int's einlesen, bis der Benutzer die Eingabetaste drückt. Ich weiß nur nicht wie das geht. Bis jetzt sieht mein Programm so aus. ... signed int x; do { cin<<x } while (x != 'Das hier fehlt mir...') es funktioniert wenn ich while(x != 99) machen, dann bricht er mir die schleife ab wenn ich 99 eingebe... Zitieren
TDM Geschrieben 23. November 2005 Geschrieben 23. November 2005 ich würds so machen: do { x = getch(); }while (x != '\n'); bei cin wird das erst gepuffert (d.h. du musst erst enter drücken) Zitieren
IceDuck Geschrieben 24. November 2005 Geschrieben 24. November 2005 es funktioniert wenn ich while(x != 99) machen, dann bricht er mir die schleife ab wenn ich 99 eingebe... ???? wenn du das mit ascii werten machen willst, hast du das 1. falsch geschrieben und (muss in einfachen aführungsstrichen) 2. ist der wert 99 der kleinbuchstabe a. while(x != '13') müsste auch gehen oder while(x != '\n') besser wäre aber immer noch while(getch() != '\n') Zitieren
Guybrush Threepwood Geschrieben 24. November 2005 Geschrieben 24. November 2005 Das ist Quatsch. x ist ein int und wenn er cin>>x schreibt dann wird auch ein int eingelesen und kein Zeichen dessen Ascci Wert er überprüfen kann. Deshalb hat er schon recht mit den 99. @Jaqueson Was du willst wird so nicht funktionieren, weil du ja die Eingabe von X immer mit einem Return abschließen musst. D.h. in X wird niemals ein '\n' oder so drin stehen sondern immer die Zahl die du als letztes Eingegeben hast. Du wirst dir also eine andere Abbruchbedingung überlegen müssen. Zitieren
Jaqueson Geschrieben 24. November 2005 Autor Geschrieben 24. November 2005 Ich hab mir schon überlegt, ob ich das mit nem anderen Datentyp mache. Ich muss halt während der Eingabe zählen wie oft 1, 2, 3, 4 eingegeben wurde... Die Eingabe soll halt in einer Zeile passieren. Bsp.: Eingabe: 1 2 3 1 2 3 4 2 1 Zitieren
Guybrush Threepwood Geschrieben 25. November 2005 Geschrieben 25. November 2005 Wenn es dir nur um einstellige Zahlen geht dann kannst du getch verwenden. Das liefert dir dann den Ascci Wert der gedrückten Taste. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.