Versionen dieses Beitrags

Informatik zum Jahresanfang – Auflösung für 9

Gb 80x80 Gunnar Bittersmann
  • Informatik zum Jahresanfang – Auflösung für 3, 6 und 15
  • Informatik zum Jahresanfang – Auflösung für 9
  • @@Gunnar Bittersmann
  • > ![](/images/5f87c392-0401-47fe-9f42-609aa84c1af2.png){:width="600"}
  • >
  • > > Und wenn man den hat …
  • Analog zum 3er gibt’s auch bei der Teilbarkeit durch 9 einen Ring, in dem man mit 1 in den jeweils nächsten Zustand in eine Richtung (in meinem Diagramm in Uhrzeigerrichtung) kommt und mit 9 − 1 = 8 in die andere. Mit 0 und 9 verbleibt man im jeweiligen Zustand; mit den anderen Ziffern nimmt man Abkürzungen über die Diagonalen:
  • ![](/images/5bf0613a-7a6a-46c3-b000-40819b672f0b.png){:width="600"}
  • (Die nahe am Zustand stehenden Symbole geben die Richtung an, wie man aus dem Zustand rauskommt; die Pfeile und doppelten Linien hab ich gespart.)
  • ‚Aber Gunnar‘, werdet ihr sagen, ‚Anfangs- und Endzustand müssen doch aufgedröselt sein!‘
  • *„Marty, du musst vierdimensional denken!“* Hier reicht eine weniger, wie dedlfix sagte: „Denk mal dreidimensional.“
  • Hab ich gemacht und in 3D gezeichnet: Anfangs- und Endzustand befinden sich in der Projektion genau hintereinander und damit überlappen sich auch ihre Verbindungen zu den anderen Zuständen und deren identischen Beschriftungen! 😜 (Die Ausrede konnte ich nicht an andere verschenken, die brauchte ich für mich selber.)
  • Das Neuneck mit Diagonalen hatte ich eigentlich für die Teilbarkeit durch 16 angedacht. Es liegt die Vermutung nahe, dass ein Automat dafür 9 Zustände braucht. Allgemein: 2*ⁿ*⁻¹ + 1 Zustände für die Teilbarkeit durch 2*ⁿ*.
  • Da ich faul bin, hatte ich nach einer Grafik eines Neunecks mit Diagonalen gesucht, aber nur eine in einer Auflösung unter 200 × 200 Pixel gefunden. Also selber machen. Da ich faul bin: machen lassen – von einem Script. Und dabei [wieder was gelernt](https://twitter.com/g16n/status/1082278010089365504): `createElement('path')`{:.language-js.bad} geht nicht; es muss `createElementNS('http://www.w3.org/2000/svg', 'path')`{:.language-js.good} mit Angabe des SVG-Namensraums sein.
  • ([Neuneck als SVG](https://bittersmann.de/test/nonagon/nonagon.svg) und [als in HTML eingebettetes SVG](https://bittersmann.de/test/nonagon/nonagon.html))
  • LLAP 🖖
  • --
  • *„Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“* —Kurt Weidemann