Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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!

Geschrieben
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.

Geschrieben

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.

Geschrieben

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!

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...