| Dateityp | APK |
|---|---|
| Herausgeber | Tomohide NANIWA |
| Veröffentlichungsdatum | 19.10.2019 |
| Datum hinzugefügt | 19.10.2019 |
| Os Anforderungen | Android |
| Bedarf | Requires Android |
| Downloads insgesamt | 0 |
| Preis | $1.00 |
Beschreibung
Frtm (Forth Modoki) ist eine Software, die die Programmiersprache FORTH simuliert. Es ist jedoch nicht beabsichtigt, das strenge FORTH zu reproduzieren. Es gibt keinen Compiler, aber die Wörter und Konstanten in einem benutzerdefinierten Wort werden interpretiert, wenn es registriert wird.
Es gibt auch einige Aspekte, die sich von FORTH unterscheiden: frtm hat nicht die Wörter, um den Rückgabestapel zu manipulieren, während frtm die rekursive Definition des Wortes erlaubt.
Frtm unterstützt auch die Berechnung reeller Zahlen. Es hat mathematische Funktionen wie Exponentialfunktion, Quadratwurzel, trigonometrische Funktionen, hyperbolische Funktionen, bitweise Operationen. So kann frtm die alternative Software des wissenschaftlichen Taschenrechners sein.
Die Interpretation des Ausdrucks erfolgt gemäß der umgekehrten polnischen Notation (RPN). Frtm hat eine bedingte Verzweigung "if", eine Struktur für eine Schleife "do-while" und "for-loop". Sie können auch ein neues Wort bilden, indem Sie das Wort kombinieren.
Auf dem Android-Betriebssystem wurden die Konfiguration der anfänglichen Größe des Wörterbuchs und des Stapels sowie die Möglichkeit, das Wort im Wörterbuch im „Wörterbuch“ zu speichern, hinzugefügt. Die Anzahl der „Wörterbücher“ ist auf bis zu drei begrenzt.
Eine detailliertere Spezifikation der Sprache finden Sie auf der Support-Webseite in Japanisch.
Wenn Sie frtm kostenlos testen möchten, versuchen Sie bitte die Java-Applet-Version von frtm auf der folgenden Webseite:
http://www.rbt.his.u-fukui.ac.jp/~naniwa/comp/frtma.html
*** Wortbeispiele ***
* Durchschnitt aus zwei Zahlen
: Durchschnitt + 2,0/;
* Durchschnitt von N Zahlen
: nave tausche 1 gegen rot + loop swap 1.0 */;
2 4 6 8 10 5 Kirchenschiff . kr
0 1 2 3 4 5 6 7 8 9 10 SP Kirchenschiff . kr
* Populationsvarianz von N Zahlen
: nvarp dup 1+ copy nave SP nrotr swap dup * over 1 for rot dup * + loop swap 1.0 */SP nrot dup * - ;
2 4 6 8 10 5 nvarp . kr
* Unvoreingenommene Varianz von N Zahlen
: nvar dup 1+ copy nave SP nrotr swap dup * over 1 for rot dup * + loop SP nrot dup * 3 ndup * - swap 1- 1.0 */;
2 4 6 8 10 5 nvar . kr
* Größter gemeinsamer Teiler von 2 Zahlen
: gcd über % dup 0 tauschen > while drop ;
1001 819 gcd . kr
* Fakultät [fakt(1)=1, fakt(n)=n*fakt(n-1)]
** Rekursion
: factr dup 1=if else dup 1- factr * endif ;
10 Faktor . kr
** Wiederholung
: facti 1 tausche 1+ 1 gegen I * loop ;
10 Tatsache . kr
* Fibonacci-Folge [fib(0)=0, fib(1)=1, fib(n)=fib(n-1) + fib(n-2)]
** Rekursion
: fib dup 0= if else dup 1=if else dup 1- fib swap 2 - fib + endif endif ;
30 Fib. kr
** Wiederholung
: fibi dup 0= if else 0 1 rot 1 for swap over + loop swap drop endif ;
30 fibi . kr
* Grafiken
** Rechteck füllen
: Boxen 16 0 für I setcol 10 20 I * + dup 100 100 rectf loop ;
GM-Boxen
: hls 16 0 für I 45 * 2/50 100 setHLS 10 20 I * + dup 100 100 rectf loop ;
gm hls
** Rekursives Zeichnen (Koch-Kurve)
: vor 5 Kopien fallen lassen ;
: genx 3 ndup 6 ndup - * minus 100/Swap 4 ndup 7 ndup - * 100/+ 5 ndup +
5 nrotr 4 ndrop ;
: geny tauschen 3 ndup 6 ndup - * 100/tauschen 4 ndup 7 ndup - * 100/+ 4 ndup +
5 nrotr 4 ndrop ;
: gen 6 kopieren genx 7 nrotr geny ;
: behalte 7 nrotr 7 nrotr pre ;
: post 9 nrot 9 nrot 4 nrot 4 nrot 5 ndup 1- ;
: line moveto lineto ;
: koch dup 0= if drop line else
pre 0 0 gen behalten 33 0 gen post koch
pre 33 0 gen behalten 50 -28 gen post koch
pre 50 -28 gen behalten 66 0 gen post koch
pre 66 0 gen behalten 100 0 gen post koch
5 nTropfen
endif ;
: kochs 10 setcol 89 440 551 440 4 koch
11 setcol 551 440 320 40 4 koch
12 setcol 320 40 89 440 4 koch ;
gm kochs
** Direkte Verwendung von ReGIS-Grafikterminals wie Escape-Sequenz
gr
(W(I15)P[50,50]C(S)[][+40,+40][+40,-40][+40,+40][+40,-40][+40,+ 40][+40,-40][](E)) .
(W(I12)P[50,150]F(C(B)[200,+200][+200,-150](E))) .
(W(I11)P[70,170]T(S16)[16,12]'Hallo Welt') .
// Durch die Verwendung des Wortes 'grdemo' werden einige Wörter für Grafikbeispiele im Wörterbuch registriert.