Name:
Taschenrechner
Beschreibung:
Ich hab seit einiger Zeit mich mit dem Thema Compilerbau beschäftigt und damit einen erweiterten Taschenrechner erstellt, der Variablen (also zur Laufzeit), Verzweigungen, Schleifen etc. unterstützt. Außerdem hat er die üblichen Funktionen (*,-,/,+,(),!,%,sin,tan,cos,log,log10,|,&,~,^, >, <, equals, etc.) und auch Kommentare sind möglich (mit ' eingeleitet)
Ein Beispiel-Code für die Fibonacci Zeichenfolge:
equals(n, 0) ? n = 7;' Wievielte Fibonacci Zahl? (Anzahl der Iterationen)
equals(x, 0) ? x = 0;
equals(y, 0) ? y = 1; 'Variable für Ergebniss
n#(temp = x) + (x = y) + (y = temp + y); 'Der komplette Algorithmus in einer Zeile
x;
Damit wird der 7. Fibonacci Wert angegeben (n), der dazugehörige Syntaxbaum wird ebenfalls ausgegeben (Für jede Zeile ein Syntaxbaum).
Wenn man die Schleife wegmacht (n#), kriegt man jeden Fibonacci Wert nacheinander.
Die Methoden und Regelungen stehen alle im Programm drinne (s. Screenshot) (GUI ist jz nich so hübsch, war mir aber unwichtig)
Wichtig: Dezimalzahlen mit einem PUNKT trennen.
Außerdem bedeutet Semikolon = Ende der Anweisung. Die Verzweigung kann auch über mehrere Zeilen gehen.
Zuweisungen sind mit = und : möglich. Genauso kann als Klammer entweder [] oder () genutzt werden (auch beides gemixxt, also "blaabla ( bla ]" geht.)
Neue Operatoren können leicht hinzugefügt werden (Um ein Enum erweitern und im Syntaxbaum die Berechnungsmethode ergänzen)
Screenshot(s):
Verwendete Programmiersprache(n) und IDE(s):
C#, Visual Studio 2013 Professional
Systemanforderungen:
.NET Framework 4.0
Systemveränderungen:
Nix
Taschenrechner
Beschreibung:
Ich hab seit einiger Zeit mich mit dem Thema Compilerbau beschäftigt und damit einen erweiterten Taschenrechner erstellt, der Variablen (also zur Laufzeit), Verzweigungen, Schleifen etc. unterstützt. Außerdem hat er die üblichen Funktionen (*,-,/,+,(),!,%,sin,tan,cos,log,log10,|,&,~,^, >, <, equals, etc.) und auch Kommentare sind möglich (mit ' eingeleitet)
Ein Beispiel-Code für die Fibonacci Zeichenfolge:
equals(n, 0) ? n = 7;' Wievielte Fibonacci Zahl? (Anzahl der Iterationen)
equals(x, 0) ? x = 0;
equals(y, 0) ? y = 1; 'Variable für Ergebniss
n#(temp = x) + (x = y) + (y = temp + y); 'Der komplette Algorithmus in einer Zeile
x;
Damit wird der 7. Fibonacci Wert angegeben (n), der dazugehörige Syntaxbaum wird ebenfalls ausgegeben (Für jede Zeile ein Syntaxbaum).
Wenn man die Schleife wegmacht (n#), kriegt man jeden Fibonacci Wert nacheinander.
Die Methoden und Regelungen stehen alle im Programm drinne (s. Screenshot) (GUI ist jz nich so hübsch, war mir aber unwichtig)
Wichtig: Dezimalzahlen mit einem PUNKT trennen.
Außerdem bedeutet Semikolon = Ende der Anweisung. Die Verzweigung kann auch über mehrere Zeilen gehen.
Zuweisungen sind mit = und : möglich. Genauso kann als Klammer entweder [] oder () genutzt werden (auch beides gemixxt, also "blaabla ( bla ]" geht.)
Neue Operatoren können leicht hinzugefügt werden (Um ein Enum erweitern und im Syntaxbaum die Berechnungsmethode ergänzen)
Screenshot(s):
Verwendete Programmiersprache(n) und IDE(s):
C#, Visual Studio 2013 Professional
Systemanforderungen:
.NET Framework 4.0
Systemveränderungen:
Nix
Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „RushDen“ ()