Passa al contenuto
FF

frtm for Android APK

Editore: Tomohide NANIWA
Android APK $1.00
Scarica 0 scaricamenti
Tipo di fileAPK
Editore Tomohide NANIWA
Data di rilascio19 ott 2019
Data aggiunta19 ott 2019
Requisiti del sistema operativoAndroid
RequisitiRequires Android
Download totali0
Prezzo$1.00

Descrizione

Frtm (ForTH Modoki) è un software che simula il linguaggio di programmazione FORTH. Tuttavia non è destinato a riprodurre il rigoroso FORTH. Non esiste un compilatore, ma le parole e le costanti in una parola definita dall'utente vengono interpretate al momento della registrazione.

Ci sono anche alcuni aspetti a differenza di FORTH: frtm non ha le parole per manipolare lo stack di ritorno, mentre frtm permette la definizione ricorsiva della parola.

Frtm supporta anche il calcolo dei numeri reali. Ha funzioni matematiche come esponenziale, radice quadrata, funzioni trigonometriche, funzioni iperboliche, operazioni bit per bit. Quindi frtm può essere il software alternativo della calcolatrice scientifica.

L'interpretazione dell'espressione sarà condotta secondo la notazione polacca inversa (RPN). Frtm ha un ramo condizionale "if", una struttura per un ciclo "do-while" e "for-loop". Puoi anche creare una nuova parola combinando la parola.

Su OS Android sono state aggiunte la configurazione della dimensione iniziale del dizionario e dello stack, la possibilità di salvare la parola nel dizionario nel "libro di parole". Il numero di "libro di parole" è limitato a un massimo di tre.

Per una specifica più dettagliata della lingua, fare riferimento alla pagina Web in giapponese per il supporto.

Se vuoi testare frtm liberamente, prova la versione dell'applet Java di frtm alla seguente pagina web:

http://www.rbt.his.u-fukui.ac.jp/~naniwa/comp/frtma.html

*** ESEMPI di parole ***

* Media di due numeri

: ave + 2.0/;

* Media di N numeri

: scambio nave sopra 1 per rot + scambio loop 1.0 */;

2 4 6 8 10 5 navata . cr

0 1 2 3 4 5 6 7 8 9 10 SP navata . cr

* Variazione della popolazione di N numeri

: nvarp dup 1+ copia nave SP nrotr swap dup * su 1 per rot dup * + loop swap 1.0 */SP nrot dup * - ;

2 4 6 8 10 5 nvarp . cr

* Varianza imparziale di N numeri

: nvar dup 1+ copia 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 . cr

* Massimo comun divisore di 2 numeri

: gcd do swap over %dup 0 > while drop ;

1001 819 ccc . cr

* Fattoriale [fatto(1)=1, fatto(n)=n*fatto(n-1)]

** Ricorsività

: factr dup 1=se altrimenti dup 1- factr * endif ;

10 fatti. cr

** Iterazione

: facti 1 scambia 1+ 1 per I * loop ;

10 fatti. cr

* Sequenza di Fibonacci [fib(0)=0, fib(1)=1, fib(n)=fib(n-1) + fib(n-2)]

** Ricorsività

: fib dup 0= se altrimenti dup 1=se altrimenti dup 1- fib swap 2 - fib + endif endif ;

30 dollari. cr

** Iterazione

: fibi dup 0= se altrimenti 0 1 rot 1 per swap over + loop swap drop endif ;

30 fichi. cr

* Grafica

** Riempi il rettangolo

: box 16 0 per I setcol 10 20 I * + dup 100 100 recf loop ;

scatole gm

: hls 16 0 per I 45 * 2/50 100 setHLS 10 20 I * + dup 100 100 rectf loop ;

gm hl

** Disegno ricorsivo (curva di Koch)

: pre 5 copie drop ;

: genx 3 ndup 6 ndup - * meno 100/scambia 4 ndup 7 ndup - * 100/+ 5 ndup +

5 nrot 4 ndrop ;

: geny swap 3 ndup 6 ndup - * 100/swap 4 ndup 7 ndup - * 100/+ 4 ndup +

5 nrot 4 ndrop ;

: gen 6 copia genx 7 nrotr geny ;

: mantieni 7 nrotr 7 nrotr pre ;

: post 9 nrot 9 nrot 4 nrot 4 nrot 5 ndup 1- ;

: linea passa a linea a ;

: koch dup 0= se drop line else

pre 0 0 gen mantieni 33 0 gen post koch

pre 33 0 gen mantieni 50 -28 gen post koch

pre 50 -28 gen mantieni 66 0 gen post koch

pre 66 0 gen mantieni 100 0 gen post koch

5 ngoccia

finisci se ;

: kochs 10 setcol 89 440 551 440 4 koch

11 setcol 551 440 320 40 4 pezzi

12 setcol 320 40 89 440 4 pezzi ;

gm Kochs

** Uso diretto del terminale grafico ReGIS come sequenza di escape

gm

(L(I15)P[50,50]C(S)[][+40,+40][+40,-40][+40,+40][+40,-40][+40,+ 40][+40,-40][](E)) .

(L(I12)P[50,150]FA(C(B)[200,+200][+200,-150](MI))) .

(W(I11)P[70,170]T(S16)[16,12]'Ciao mondo') .

// Usando la parola 'grdemo', alcune parole per esempi di grafica verranno registrate nel dizionario.

Programmi simili

Alternative