Hallo, die Frage ist die Fortsetzung des Themas, die ich vor Paar Tagen gestellt habe. Gegeben ist das funktionierendes Mikrokontrollerprogramm (s.Anhang) wo LEDs von 7-Segment-Anzeige undendlich lang als 7 LEDs laufen laufen (und Ziffer 8 durchlaufen) und daneben eine Reihe von 8 LED. Dazu wird Flussdiagramm erstellt (s.Anhang). Meine Fragen wären: 1. Kann man das Befehl "return" - über dem als Punktier-markiertes-Pfeil (von "Ende" zur Datei "Deklaration.h") draufschreiben?, weil das Befehl "return" bedeutet: rausspringen aus der Funktion. 1a. Zwischenfrage: aus welcher Funktion wird durch "return" rausgesprungen: aus der Funktion "void ZEITSCHLEIFE_50mS()" oder aus der Projektdatei "ZEITSCHLEIFE_50mS" ? Und durch "return" wird in die Datei des Projektes gelandet, wo der Ausdruck ZEITSCHLEIFE_50mS() steht? 2. Gibt es keine innere Schleife im angehängtes Programm (Flussdiagremm)? Das Programm wird nicht durch eine innere Schleife ausgeführt, sondern nur dann wenn sie von außen (anderes Programm) angesprochen ist (mit in vorherigen Programmaufruf vorbereitetem i=i+1 ) ?
Wiebitte was? Deine Fragen und Beschreibungen sind so unverständlich geschrieben, da kommt nichtmal meine Glaskugel mit zurecht...
Hel B. schrieb: > 1. Kann man das Befehl "return" - über dem als Punktier-markiertes-Pfeil > (von "Ende" zur Datei "Deklaration.h") draufschreiben? Wo willst du "return" hinschreiben? Du kannst im Programmablauf nicht in eine Header-Datei springen. > 1a. Zwischenfrage: aus welcher Funktion wird durch "return" > rausgesprungen: aus der Funktion "void ZEITSCHLEIFE_50mS()" oder aus der > Projektdatei "ZEITSCHLEIFE_50mS" ? Und durch "return" wird in die Datei > des Projektes gelandet, wo der Ausdruck ZEITSCHLEIFE_50mS() steht? Nach deinem Quellcode erfolgt der Rücksprung aus
1 | void SCHLEIFE() |
Ansonsten ja: Der Rücksprung erfolgt in die ausrufende Funktion, also wo der Aufruf
1 | SCHLEIFE() |
erfolgt. > 2. Gibt es keine innere Schleife im angehängtes Programm > (Flussdiagremm)? Nein, die Funktion läuft einmal durch. > Das Programm wird nicht durch eine innere Schleife > ausgeführt, sondern nur dann wenn sie von außen (anderes Programm) > angesprochen ist (mit in vorherigen Programmaufruf vorbereitetem i=i+1 ) > ? Ja, die Funktion wird nur bei Aufruf ausgeführt. (Wobei i für den ersten Durchlauf außerhalb initialisiert werden muss)
was schrieb: > Wiebitte was? > Deine Fragen und Beschreibungen sind so unverständlich geschrieben, da > kommt nichtmal meine Glaskugel mit zurecht... Na, ist doch offensichtlich der Versuch uns Hausaufgaben anzudrehen. Beim Transkribieren ist dabei was durcheinander gekommen. Wenn der Frager es richtig lernen möchte, es gibt so voll echte Oldschool Beschreibungen aus den 60ern und 70ern über Flowcharts. Könnte man ja mal lesen statt zu versuchen seine Hausaufgaben an ein Forum auszusourcen: http://www.ecma-international.org/publications/files/ECMA-ST-WITHDRAWN/ECMA-4,%202nd%20Edition,%20September%201966.pdf http://www.eah-jena.de/~kleine/history/software/IBM-FlowchartingTechniques-GC20-8152-1.pdf https://www.ideals.illinois.edu/bitstream/handle/2142/743/1963Schultheiss.pdf
Ersetze "Start" durch "Begin" und "Ende" durch "Return" Kannst auch mal (im übetragenen Sinn) hier schauen http://www.weigu.lu/a/pdf/MICEL_A6_Unterprogramme.pdf
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.
