Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme.

while(cin>>var)befehl;

Diskussion: while(cin>>var)befehl; im Forum Code Kitchen, in der Kategorie Software Home; Anzeige Hi Leute, ich hab in codebeispielen schon oefter schleifen der form: while(cin>>d) v.push_back(d); (z.B.) gesehen. Mein Problem ist: Wie ...

Antwort
Alt 03.04.02, 15:57   #1 (permalink)
 
Registriert seit: 02.10.01
Nornagest Leistung: Facit NTK
Likes: 0
Standard while(cin>>var)befehl;

Anzeige

Hi Leute,
ich hab in codebeispielen schon oefter schleifen der form:
while(cin>>d) v.push_back(d); (z.B.)
gesehen.
Mein Problem ist: Wie verlasse ich die Schleife?
ich hoffe ihr koennt mir helfen
mfg
Nornagest

Nornagest ist offline   Mit Zitat antworten
Alt 03.04.02, 16:30   #2 (permalink)
Member of Honour
 
Benutzerbild von Brabax
 
Registriert seit: 04.10.01
Brabax Leistung: 8086Brabax Leistung: 8086
Brabax eine Nachricht über ICQ schicken
Likes: 42
Standard

die Schleife wird verlassen sobald die Bedingung darin wahr ist! d.h wenn deine schleife die zahlen 1-10 hochzählt und aufhört sobald er bei zehn angekommen ist so unterbricht die Schleif sobald die variable (bei dir "d") 10 ist. du kannst sie alledings auch während die Schleife läuft auf zehn setzen durch eine Funktion oder was auch immer und damit die schleife vorzeitig beenden! Das kannst du nun auf alle anderen schleifen anwenden...und whooops da ist die Schleife gebrochen!
__________________

<< Wir leben bereits im morgigen Gestern, doch vom gestrigen Morgen sind wir noch weit entfernt. >>

<< Träume sind Schäume. Es liegt an dir ob du sie lebst oder ein Schaumschläger bist! >>

<< Erst wenn man beginnt zu implizieren, wird man merken, dass einem sowieso keiner richtig zuhört. >>
Brabax ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 03.04.02, 16:36   #3 (permalink)
Themenstarter
 
Registriert seit: 02.10.01
Nornagest Leistung: Facit NTK
Likes: 0
Standard

etwas grundwissen uebers programmieren habe ich auch
es ging um die spezielle scleife, auszerdem wird die schleife verlassen, sobald die bedingung nicht mehrer fuellt ist (deshalb while == solange)

ich habs chon eine antwort bekommen, aber danke fuer den versuch

es genuegt ein eof zu senden evtl mit CRTL^D oder CRTL^Z
Nornagest ist offline   Mit Zitat antworten
Alt 03.04.02, 16:37   #4 (permalink)
Member of Honour
 
Registriert seit: 02.10.01
Indi Leistung: Z3
Likes: 0
Standard

Eine Schleife verlässt man eigentlich mit dem Befehl break;, wenn man sie vorzeitig verlassen möchte.
Indi ist offline   Mit Zitat antworten
Alt 03.04.02, 16:45   #5 (permalink)
Themenstarter
 
Registriert seit: 02.10.01
Nornagest Leistung: Facit NTK
Likes: 0
Standard

@peter
das stimmt, aber im beispiel is kein break und irgendwie muss man die abbruch bedingung ja erfuellen koennen (STRG^D oder STRG^Z funzt doch nich)
Nornagest ist offline   Mit Zitat antworten
Alt 03.04.02, 17:55   #6 (permalink)
Bastard Operator
 
Benutzerbild von TheEvilOne
 
Registriert seit: 02.10.01
TheEvilOne Leistung: Z3
Likes: 16
Standard

oder exit(1);
TheEvilOne ist offline   Mit Zitat antworten
Alt 03.04.02, 18:23   #7 (permalink)
Member of Honour
 
Registriert seit: 03.10.01
blueflash Leistung: Facit NTK
Likes: 1
Standard

das liegt wohl daran, dass der operator ">>" einen versteckten rückgabewert hat. (z.B. das Zeichen, dass er als letztes einließt) wenn der dann 0 ist, wird die schleife beendet.
blueflash ist offline   Mit Zitat antworten
Alt 03.04.02, 18:46   #8 (permalink)
Themenstarter
 
Registriert seit: 02.10.01
Nornagest Leistung: Facit NTK
Likes: 0
Standard

so dachte ich mir das auch @ blueflash, abaer die frage ist, wie mach ich das?
mit alt+0 (direkt ascii wert 0) funzt es auch nich ...
wenn einer von euch also noch ne idee hat ...
Nornagest ist offline   Mit Zitat antworten
Alt 03.04.02, 19:31   #9 (permalink)
Member of Honour
 
Registriert seit: 03.10.01
blueflash Leistung: Facit NTK
Likes: 1
Standard

versuch doch mal, alle ASCII zeichen durchzutesten. wenn das nicht klappt, ist das beispiel irgendwie sinnlos.
blueflash ist offline   Mit Zitat antworten
Alt 04.04.02, 00:38   #10 (permalink)
Themenstarter
 
Registriert seit: 02.10.01
Nornagest Leistung: Facit NTK
Likes: 0
Standard

wenn ich mal zu viel zeit hab werd ich evtl ma alle zeichen durchprobieren, aber das is irgendwie etwas aufwaendig ... naja ich werds den rechner irgendwie machen lassen...

sinnlos is das beispiel nich, denn ich hab das schon oefter gesehn und vor allem in beispielen von bjarne stroustrup (dem erfinder von c++) ...
Nornagest ist offline   Mit Zitat antworten
Alt 05.04.02, 13:58   #11 (permalink)
Themenstarter
 
Registriert seit: 02.10.01
Nornagest Leistung: Facit NTK
Likes: 0
Standard

hab die antwort gefunden, unter win funzt es wegen einem fehler nich

Zitat:
The program ends reading input when it sees "end of file". If you run the program from the keybord on a Unix machine "end of file" is Ctrl-D. If you are on a Windows machine that because of a bug doesn't recognize an end-of-file character
Nornagest ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Software Home » Code Kitchen » while(cin>>var)befehl;
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
dos befehl in VB? redips (In)security allgemein 1 05.04.06 16:31
SQL-Befehl AaFreak Code Kitchen 15 16.04.05 12:49
linux befehl Syd Linux/UNIX 2 19.05.04 18:08
Web-URL oder Web-Befehl ??? # Speedy # (Web-) Design und webbasierte Sprachen 5 03.05.03 04:26
ll-Befehl bzw. ls-Befehl LordCyrix Linux/UNIX 11 18.10.02 21:19


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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61