Anfangs 2008 habe ich an dieser Stelle ein Programm „Türme von Hanoi“ für den HP-42S präsentiert. Unglaublich, wie schnell die Zeit vergeht. Nun, 15 Jahre danach habe ich das Programm adaptiert für den SwissMicros DM42. Jetzt kann man bis zu 15 Scheiben wählen und ist damit mit Zuschauen wahrscheinlich weitere 15 Jahre beschäftigt.
Der Faktor Zeit
Ich denke nie an die Zukunft – sie kommt früh genug.
Albert Einstein
Schon verrückt, wie schnell die Zeit vergeht. Und je älter man wird, desto schneller scheint die Zeit zu verfliessen. Dafür hat die Wissenschaft verschiedene Erklärungsversuche. Eine Theorie besagt: Erlebt man wenig Neues, Aufregendes, bleiben auch weniger Erinnerungen, und im Rückblick erscheint die Zeitspanne kürzer. Da man als älterer Mensch schon vieles erlebt hat und tendenziell weniger offen für Neues ist, scheint auch die Zeit schneller an einem vorbei zu ziehen. Mir gefällt dieser Ansatz, denn er zeigt auch, wie man diesen Effekt reduzieren kann: neugierig bleiben und Neues ausprobieren, also geistig und körperlich aktiv bleiben!
Mit der Adaption des Hanoi-Programms für den DM42 habe ich zwar nichts wirklich Neues gemacht, aber immerhin meine geistigen Fähigkeiten ein wenig gefordert und auch ein bisschen Spass daran gehabt. Also alles gut!
Adaption an DM42
Eine Adaption an den DM42 habe ich vor allem wegen der besseren Grafikfähigkeiten dieses Taschenrechners ins Auge gefasst. Beim HP-42S haben die grafischen Fähigkeiten der Anzeige die maximale Anzahl Scheiben auf 7 limitiert. Der DM42 bietet aber zwei weitere Grafikmodi, einen mit 200×120 (GrMod 2) und einen mit 400×240 Pixeln (GrMod 3). Ich habe mich für GrMod 2 entschieden, das reicht für diesen Zweck völlig aus. Die Anzahl Scheiben habe ich auf 15 limitiert. Dafür braucht es schon 32’767 Züge (2^15-1). Wenn man pro Zug eine Sekunde veranschlagt, wären das also mehr als 9 Stunden.
Das HP-42S Programm kodiert den Zustand eines Stapels ziffernbasiert in einer Zahl. Bei 15 Scheiben funktioniert dieser Trick natürlich nicht mehr. Darum verwende ich im DM42 Programm eine Matrix. Ansonsten habe ich keine grossen Änderungen am Programm gemacht. Wahrscheinlich gäbe es noch Optimierungspotential, aber für einmal hatte ich meinen Hang zum Perfektionismus unter Kontrolle.