0 Daumen
463 Aufrufe


Zeichne ein Flussdiagramm für die folgende Funktion (Quadrieren einer Zahl):
Das Programm startet im Eingabemodus. Im Eingabemodus wird über das mehrmalige kurze (kleiner 200ms) Drücken eines
Tasters eine Zahl A eingeben. Wird der Taster lange gedrückt so wechselt das Programm in den Ausgabemodus.
Falls die Zahl A=20 erreicht oder bei A=0 die Taste lang gedrückt wird, dann leuchtet die LED einmal lange für eine
Sekunde (Soll dem Benutzer anzeigen, dass er eine Fehlbedienung gemacht hat), und die Zahl A wird wieder auf 0 gesetzt
und die LED geht wieder aus → Start von vorne.
 Im Ausgabemodus blinkt eine LED genau A*A mal, und zwar mit einer Blinkfrequenz von 5Hz. Nach dem letzten Mal
Blinken wechselt das Programm zurück in den Eingabemodus und A wird wieder auf 0 gesetzt. Wird im Ausgabemodus
(Also während des Blinkens) der Taster gedrückt (egal ob kurz/lang), kehrt das Programm sofort in den Eingabemodus
zurück und A wird wieder auf 0 gesetzt und die LED geht wieder aus.


Hinweis: Eine Verzweigung mit der Bedingung „Taster lange gedrückt?“ kann es im Flussdiagram nicht geben! Wie
sollte man das denn in Software realisieren? Ihr müsst daher die Zeitmessung und die Abfrage zwischen Drücken und
Loslassen irgendwie im Flussdiagramm darstellen. Den Befehl millis() kennt das Flussdiagramm nicht, aber eventuell
könnt ihr seine Funktion im Flussdiagramm beschreiben oder nachbauen. Oder es fällt Euch eine andere Idee ein, wie
man die Drückzeit messen kann.

Avatar von

Hallo: Ist deine Frage noch aktuell? Sie wurde soeben aus der Mathematik in die Informatik verschoben

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community