Ein interaktives, responsives Web-Tool zur Visualisierung von großen Teilbarkeitsmustern mit bis zu 5.000 Zeilen im Pascalschen Dreieck. Online-Version: http://mathe.schwentker.de/pascal/index.html
- Interaktive Steuerung von Zeilenzahl und Teiler
- Zoom-Funktion für große Muster
- Schnelle Berechnung großer Muster bis 5.000 Zeilen durch ressourchenschonenden Algorithmus ohne
${n \choose k}$ ("n über k") - Minimalistisch, performant und leichtgewichtig (keine Frameworks)
- Responsives Design (funktioniert auf Mobilgeräten, Tablets und Desktops)
Das Pascalsche Dreieck besteht aus ganzen Zahlen, die zeilenweise versetzt untereinander geschrieben werden. Beginnen mit der
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
Die rekursive Rechenregel für den Eintrag
Die Binomialkoeffizienten, bzw. Zahlen im Pascaleschen Dreieck haben viele interessante und nützliche mathematische Eigenschaften. So steht
In der Web-App werden nicht die Zahlenwerte des Pascalschen Dreiecks selbst ausgegeben. Stattdessen wird an dieser Position angezeigt, ob der Wert durch die ganze Zahl
-
·
, wenn Wert nicht durch m teilbar ($a_{n,k}\mod m \neq 0$ ) -
V
, wenn Wert durch m teilbar ($a_{n,k}\mod m = 0$ )
Es entsteht so z.B. bei m = 2 das berühmte Sierpinski-Dreieck, bei m = 3, 5, 7 weitere fraktalartige modulare Muster. Solche Muster sind nicht nur schön, sondern in der Mathematik tatsächlich Forschungsgegenstand.
Da mit der App auch große Muster bis 5.000 Zeilen berechnet werden sollen, müssen die Einträge im Pascalschen Dreieck effizient berechnet werden. Die direkte Berechnung über die Binomialkoeffizienten
schon in der Größenordnung
Zum Glück geht es viel einfacher: Denn nicht nur die Einträge des Pascalschen Dreiecks selbst lassen sich ohne die Fakultäst-Formel rekursiv berechnnen (via
Mit dieser Regel berechnen sich die Einträge rekursiv blitzschnell und speicherschonend, da jeweils nur kleine Modulowerte berechnet und addiert werden müssen. Mathematisch funktioniert das, weil Modulo-Operationen generell "kompatibel mit der Addition" sind:
Methode | Rechenaufwand | Speicherbedarf | Bewertung |
---|---|---|---|
Direkte Berechnung mit Fakultäten | hoch |
mittel | ❌ langsam |
Lookup-Tabelle (Precompute) | schnell | hoch |
❌ speicherintensiv |
Iterative Modulo-Berechnung | sehr gering | minimal | ✅ optimal |
Noch effizienter ließen sich die Modulo-Einträge berechnen, wenn man die Symmetrie des Pascalschen Dreiecks ausnutzt:
- HTML5
- CSS3
- Vanilla JavaScript
Erstellt von Björn Schwentker. Dieses Projekt steht unter der MIT License. Du darfst es kopieren, verändern, verwenden – auch kommerziell – solange du den ursprünglichen Autor nennst. Kommentare und Hinweise willkommen!
- Darstellung der Teilbarkeitsmuster inspiriert durch:
Arndt Brünner – Pascalmod