| Aina ya faili | APK |
|---|---|
| Mchapishaji | Tomohide NANIWA |
| Tarehe ya kutolewa | 19 Okt 2019 |
| Tarehe iliyoongezwa | 19 Okt 2019 |
| Mahitaji ya Os | Android |
| Mahitaji | Requires Android |
| Jumla ya vipakuliwa | 0 |
| Bei | $1.00 |
Maelezo
Frtm (ForRTh Modoki) ni programu inayoiga lugha ya programu FORTH. Hata hivyo haikusudiwi kuzalisha tena ile FORTH kali. Hakuna mkusanyaji, lakini maneno na viunga katika neno lililofafanuliwa na mtumiaji hufasiriwa wakati imesajiliwa.
Pia kuna baadhi ya vipengele tofauti na FORTH: frtm haina maneno ya kuendesha mrundikano wa kurudi, ilhali frtm inaruhusu ufafanuzi wa kujirudi wa neno.
Frtm pia inasaidia kukokotoa nambari halisi. Ina utendakazi wa hisabati kama kielelezo, mzizi wa mraba, vitendakazi vya trigonometric, vitendaji vya hyperbolic, utendakazi wa busara kidogo. Kwa hivyo frtm inaweza kuwa programu mbadala ya kikokotoo cha kisayansi.
Ufafanuzi wa usemi huo utafanywa kwa mujibu wa Reverse Polish Notation (RPN). Frtm ina tawi la masharti "ikiwa", muundo wa kitanzi "fanya-wakati" na "kwa-kitanzi". Unaweza pia kutengeneza neno jipya kwa kuchanganya neno.
Kwenye Android OS, usanidi wa ukubwa wa awali wa kamusi na stack, uwezo wa kuhifadhi neno katika kamusi kwenye "kitabu cha maneno" zimeongezwa. Idadi ya "kitabu cha maneno" imepunguzwa hadi tatu.
Kwa maelezo ya kina zaidi ya lugha, tafadhali rejelea ukurasa wa Wavuti katika Kijapani kwa usaidizi.
Ikiwa unataka kujaribu frtm bila malipo, tafadhali jaribu toleo la Java applet la frtm kwenye ukurasa wa wavuti ufuatao:
http://www.rbt.his.u-fukui.ac.jp/~naniwa/comp/frtma.html
*** MIFANO ya maneno ***
* Wastani wa nambari mbili
: ave + 2.0/;
* Wastani wa nambari N
: nave hubadilishana zaidi ya 1 kwa kuoza + kubadilisha kitanzi 1.0 */;
2 4 6 8 10 5 nave . cr
0 1 2 3 4 5 6 7 8 9 10 SP nave . cr
* Tofauti ya idadi ya watu ya N nambari
: nvarp dup 1+ copy nave SP nrotr swap dup * zaidi ya 1 kwa rot dup * + loop swap 1.0 */SP nrot dup * - ;
2 4 6 8 10 5 nvarp . cr
* Tofauti isiyo na upendeleo ya nambari za N
: nvar dup 1+ copy nave SP nrotr swap dup * zaidi ya 1 kwa rot dup * + loop SP nrot dup * 3 ndup * - swap 1- 1.0 */;
2 4 6 8 10 5 nvar . cr
* Kigawanyiko kikubwa zaidi cha nambari 2
: gcd badilisha zaidi ya % dup 0 > wakati drop ;
1001 819 gcd . cr
* Ukweli [ukweli (1)=1, ukweli(n)=n* ukweli(n-1)]
** Kujirudia
: factr dup 1=if else dup 1- factr * endif ;
10 ukweli. cr
**Marudio
: facti 1 kubadilishana 1+ 1 kwa I * kitanzi;
10 ukweli. cr
* Mfuatano wa Fibonacci [fib(0)=0, fib(1)=1, fib(n)=fib(n-1) + fib(n-2)]
** Kujirudia
: fib dup 0= if else dup 1=if else dup 1- fib swap 2 - fib + endif endif ;
nyuzi 30. cr
**Marudio
: fibi dup 0= if else 0 1 rot 1 kwa swap over + loop swap drop drop endif ;
30 nyuzi. cr
* Michoro
** Jaza mstatili
: masanduku 16 0 kwa I setcol 10 20 I * + dup 100 100 rectf kitanzi;
masanduku ya gm
: hls 16 0 kwa I 45 * 2/50 100 setHLS 10 20 I * + dup 100 100 rectf kitanzi;
gm hl
** Mchoro wa Kujirudia (Koch curve)
: nakala kabla ya 5 kushuka;
: genx 3 ndup 6 - * toa 100/badilisha 4 ndup 7 ndup - * 100/+ 5 ndup +
5 nrotr 4 tone;
: geny wabadilishane 3 ndup 6 dup - * 100/wabadilishane 4 ndup 7 dup - * 100/+ 4 dup +
5 nrotr 4 tone;
: gen 6 nakala genx 7 nrotr geny ;
: weka 7 nrotr 7 nrotr pre;
: post 9 nrot 9 nrot 4 nrot 4 nrot 5 ndup 1- ;
: mstari moveto lineto ;
: koch dup 0= ikiwa mstari wa kushuka mwingine
kabla ya 0 0 gen kuweka 33 0 gen post koch
kabla ya 33 0 gen kuweka 50 -28 gen post koch
kabla ya 50 -28 gen kuweka 66 0 gen post koch
kabla ya 66 0 gen kuweka 100 0 gen post koch
5 tone
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 kozi
** Matumizi ya moja kwa moja ya terminal ya michoro ya ReGIS kama vile mlolongo wa kutoroka
gm
(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]'Hujambo Ulimwengu') .
// Kwa kutumia neno 'grdemo', baadhi ya maneno ya mifano ya michoro yatasajiliwa kwenye kamusi.