Veröffentlicht 3. April 201114 j Hallo! Zuersteinmal: ES HANDELT SICH NICHT UM HAUSAUFGABEN! Ich habe zuhause angefangen ein Programm zu schreiben, so zum verstehen der Materie, da die nächste Arbeit sicher bald über dieses Thema kommt. Nun habe ich meinen Lehrer ein paar Fragen geschrieben, dieser hat mir eine sehr schöne Anleitung zurück geschickt, leider hänge ich an einem Punkt, der mich auch aufhält die anderen Punkte anzugehen. Da er Sonntags wohl nicht erreichbar ist, und ich ihn auch nicht 10x belästigen möchte, ich aber wiederum drauf brenne weiter zu machen, bitte ich um eure Hilfe! Hier die Passage aus der Anleitung: Also schreiben Sie in der Funktion eingeben eine Schleife, die die Funktion bucheingeben mit &lib.buch[lib.anzahl] als Parameter aufruft. Damit werden die Daten des Buches abgefragt und abgelegt. Danach erhöhen Sie lib->anzahl um Eins und fragen den Benutzer, ob er noch ein Buch eingeben will Diese Schleife läuft solange der Benutzer jeingegeben hat und solange lib->anzahl kleiner lib->max ist. Frage: Wie geht die Schleife? Eine for-schleife kann es nicht sein oder? Ich dachte ja eine do-while schleife, aber viel rumraten will ich auch nicht Ich hoffe ihr könnt mir helfen! grüße!
3. April 201114 j ES HANDELT SICH NICHT UM HAUSAUFGABEN! löblich Ich formuliere es mal im Pseudocode: Also schreiben Sie in der Funktion eingeben eine Schleife, die die Funktion bucheingeben mit &lib.buch[lib.anzahl] als Parameter aufruft. Damit werden die Daten des Buches abgefragt und abgelegt. Danach erhöhen Sie lib->anzahl um Eins und fragen den Benutzer, ob er noch ein Buch eingeben will Diese Schleife läuft solange der Benutzer jeingegeben hat und solange lib->anzahl kleiner lib->max ist. Funktion "Eingeben" aufrufen Aufruf "Bucheingeben" erhöhe "Anzahl"+1 Abfrage "weitere Bucheingabe?" und "Anzahl<Max" wenn ja, dann Aufruf "Bucheingeben" erhöhe "Anzahl"+1 wenn nein, dann Ende Ich hab das Gefühl, dass die Schleife "weiter Bucheingabe" besser formuliert werden könnte. Also direkt die Abfrage starten und nicht erst einmalig ein Buch eingeben lassen.
3. April 201114 j würde auch auf eine do-while schleife setzen. dann kannste ja easy die Bedingung fortführen wenn der user der eingabeaufforderung nachkommt u bis dein "max" erreicht ist.
3. April 201114 j Schon einmal VIELEN Dank! Ich bin eine totale null wenns um Do-While Schleifen geht... Ich würds irgendwie so machen: void eingeben (cbib* lib) { char wh; // für das Wiederholen der Schleife do { bucheingeben (&lib.buch[lib.anzahl]); lib->anzahl ++ ; }while (wh=='j' || wh == 'J' && lib->anzahl < lib->max) } Ist das so richtig?! Nochmal vielen Dank, ihr seid super!
3. April 201114 j sieht auf den ersten Blick gut aus. Es muss auf jeden Fall eine kopfgesteuerte Schleife sind. Schließlich wird mind. 1 Eingabe betätigt.
4. April 201114 j Es muss auf jeden Fall eine kopfgesteuerte Schleife sind. Schließlich wird mind. 1 Eingabe betätigt. Du meinst wahrscheinlich fußgesteuert.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.