Realisierung einer Webanwendung zur Ausgabe von zufälligen arithmetischen Ausdrücken

Autor: Andreas Rieger
Datum: 13.12.2021

Aufgabenstellung

Erzeugen Sie mit Hilfe einer formalen Grammatik zufällige arithmetische Ausdrücke über einstelligen natürlichen Zahlen mit den Operanden "+,-,*,/" und beliebig geschachtelten runden Klammeren, z.B.: 2*(3*(4+7)-9) oder 9+2 oder (3) oder nur 7 sind gültig,

Visualisierung

Die Generierung der Ausdrücke mittels der Grammatik wird schrittweise angezeigt. Dabei soll (z.B. durch farbliche Hervorhebung) ersichtlich sein welche Regel angewandt wird, und was sich dadurch im bisher erzeugten Ausdruck verändert hat (vorher -> nachher). Sie können dabei mit HTML-Text [und CSS] als Darstellung arbeiten.

Technische Dokumentation

Die Anwendung basiert auf HTML, CSS und Javascript.

Zur Visualisierung der Oberfläche wurde das Framework Bootstrap v5.1 verwendet. Bootstrap liefert eine einheitliche, gut strukturierte und responsive Benutzeroberfläche, die sich verschiedenen Endgeräten anpassen lässt. Außerdem hält das Framework viele vordefinierte und ansprechend gestaltete Komponenten zur Interaktion bereit.

Fachliche Dokumentation

Per Formulareingabe - hier in Form eines Range-Sliders - wird im Hintergrund zunächst eine zufällige Zeichenfolge erzeugt und in einem Array aus Objekten gespeichert.

Anschließend wird per Eingabesteuerung durch das erstellte Array iteriert und die Werte des jeweiligen Objektes werden ausgegebenen. Die Steuerung bzw. Ausgabe erfolgt entweder schrittweise manuell oder automatisch in einem ausgewählten zeitlichen Intervall.

Die Ausgabe kann jederzeit durch Betätigung des Reset-Knopfes gestoppt werden.