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!

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

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