Kurs:KTurtle/Gruppe 2008/Uhr-Sim
- Projektbeschreibung
Beschreibung | |
---|---|
Projektbeschreibung | Schreibe ein Programm, das eine Uhr imitiert. Dies sollte via Befehl Warte (mit Sekunde) möglich sein. Das Ziffernblatt wäre zu schreiben, anschließend müssten die Zeiger jeweils gezeichnet und dann auch wieder gelöscht werden. Den Unterschied (Uhrzeit und KTurtle-Uhr) müsste man ermitteln. Vermutlich geht die Uhr vor oder nach. |
Aktueller Status | Ruht. Eine einfache Digitaluhr wurde umgesetzt, leider zeigte sich, dass die Uhr (warte 1) auf 60 Sekunden bereits 10 Sekunden nach ging. |
Projektgruppe | Hero Turtle, ... |
Projektseite | Kurs:KTurtle/Gruppe 2008/Uhr-Sim |
1. Ansatz: Digitaluhr
BearbeitenErst mal prüfen, ob das überhaupt geht. Frage: Wie viel geht die Uhr vor oder nach? Der folgende Quellcode enthielt noch einige Fehler...
# Uhr-SIM
# Ansatz 1
# Digitaluhr
zurücksetzen
indiemitte
x = 0
wiederhole 60 [
wenn x < 9 [
drucke "00:00:0" + x
]
sonst [
drucke "00:00:" + x
]
x = x + 1
indiemitte
warte 1
]
Fragen
BearbeitenKönnte momentan nicht sagen, was KTurtle mit dem Druck-Befehl macht. Ich würde annehmen, dass KTurtle nacheinander Zahlenkolonnen der Form "00:00:0000:00:0100:00:0200:00:03... ausgibt. Möglicherweise muss man ihn zwischendurch die Zeichenfläche löschen lassen oder aber auffordern, wieder einige Schritte zurückzugehen, um den Text nur zu überschreiben.
Nachtrag:
- Ich habe mal den Befehl indiemitte eingefügt, damit der Text immer an der selben Stelle erscheint.
2. Ansatz
BearbeitenProgrammcode wurde korrigiert. Die Digitaluhr kommt in einer Minute gerade einmal auf 50 Sekunden.
# Uhr-SIM
# Ansatz 2
# Digitaluhr
zurücksetzen
x = 0
wiederhole 60 [
wenn x < 10 [
drucke "00:00:0" + x
] sonst [
drucke "00:00:" + x
]
x = x + 1
warte 1
zurücksetzen
]