| Polecenie | Opis |
|---|---|
| \FPmessagestrue | włącza komunikaty (domyślnie) |
| \FPmessagesfalse | wyłącza komunikaty |
| \FPdebugtrue | włącza śledzenie |
| \FPdebugfalse | wyłącza śledzenie |
| \FPset#1#2 | podstawienie #1 := #2
np. \FPset{wynik}{10.2} |
| \FPprint#1 | podaj wynik \FPset{wynik}{10.2} (np.
\FPprint{wynik} daje nam 10.2) |
| \FPadd#1#2#3 | dodawanie #1 := #2 + #3
\FPadd{\suma}{składnik}{składnik}
(np. \FPset{wynik}{10.2}
\FPadd{\suma}{\wynik}{10.2}
\FPprint{suma} daje nam: 20.400000000000000000
|
| FPdiv#1#2#3 | dzielenie #1 := #2 / #3
\FPdiv{\iloraz}{dzielna}{dzielnik}
(np. \FPset{wynik}{10.2}
\FPdiv{\iloraz}{\wynik}{5.1}
\FPprint{iloraz} daje nam:
2.000000000000000000) |
| \FPmul#1#2#3 | mnożenie #1 := #2 * #3
\FPmul{\iloczyn}{mnożna}{mnożnik}
(np. \FPset{wynik}{10.2}
\FPmul{\iloczyn}{\wynik}{10.2}
\FPprint{iloczyn} daje nam:
104.040000000000000000) |
| \FPsub#1#2#3 | odejmowanie #1 := #2 - #3
\FPsub{\różnica}{odjemna}{odjemnik\}
(np. \FPset{wynik}{10.2}
\FPsub{\różnica}{\wynik}{1.2}
\FPprint{róznica} daje nam:
9.000000000000000000) |
| \FPabs#1#2 | wartość absolutna #1 := abs(#2) |
| \FPneg#1#2 | zmiana znaku #1 := -#2 |
| \FPsgn#1#2 | znak wyrażenia #1 := sgn(#2) |
| \FPmin#1#2#3 | minimum #1 = min(#2,#3) |
| \FPmax#1#2#3 | maksimum #1 = max(#2,#3) |
| \FPe | wartość stałej Eulera: 2.718281828459045235 |
| \FPpi | wartość liczby Pi := 3.141592653589793238 |
| \FPexp#1#2 | potęga liczby e #1 := e\^(#2) |
| \FPln#1#2 | logarytm naturalny #1 := ln(#2) |
| \FPpow#1#2#3 | potęgowanie #1 := (#2)\^(#3) |
| \FProot#1#2#3 | pierwiastkowanie #1 := (#2)\^(1/#3) |
| \FPpascal#1#2 | #1 := #2-ta linia trójkąta Paskala |
| \FPseed=#1 | ustawia punkt startowy ciągu zmiennych
losowych generowanych poleceniem
\FPrandom |
| \FPrandom#1 | #1 := liczba losowa z
przedziału 0 -- 1 |
| \FPround#1#2#3 | #1 := #2 zaokrąglone do
#3 pozycji po kropce dziesiętnej |
| \FPtrunc#1#2#3 | #1 := #2 podstawiewnie z obcięciem
do #3 pozycji |
| \FPclip#1#2 | #1 := #2 podstawiewnie z usunięciem
nieznaczących zer |
| \FPsin#1#2 | #1 := sin(#2) |
| \FPcos#1#2 | #1 := cos(#2) |
| \FPsincos#1#2#3 | #1 := sin(#3), #2 := cos(#3) |
| \FPtan#1#2 | #1 := tan(#2) |
| \FPcot#1#2 | #1 := ctg(#2) |
| \FPtancot#1#2#3 | #1 := tan(#3), #2 := ctg(#3) |
| \FParcsin#1#2 | #1 := arcsin(#2) |
| \FParccos#1#2 | #1 := arccos(#2) |
| \FParcsincos#1#2#3 | #1 := arcsin(#3), #2 := arccos(#3) |
| \FParctan#1#2 | #1 := arctan(#2) |
| \FParccot#1#2 | #1 := arcctg(#2) |
| \FParctancot#1#2#3 | #1 := arctan(#3), #2 := arcctg(#3) |
| \FPupn#1#2 | #1 := eval(#2)
eval symbolizuje rozwinięcie
wyrażenia #2 zapisanego w Polskiej Notacji
wewnątrz wyrażenia można używać następujących operatorów:
+, add, -, sub, *, mul,
/, div, abs, neg, min,
max, round, trunc, clip, e,
exp, ln, pow, root, pi, sin,
cos, sincos, tan, cot, tancot,
arcsin, arccos, arcsincos, arctan,
arccot, arctancot, pop, swap, copy;
gdzie:
\FPupn\result{17 2.5 + 17.5 - 2 1 + * 2 swap /}
jest równoważne wyrażeniu:
\result := ((17.5 - (17 + 2.5)) * (2 + 1)) / 2
|
| \FPeval#1#2 | #1 := eval(#2)
eval symbolizuje rozwinięcie wyrażenia. Wewnątrz mogą
być używane nawiasy i znane operatory (w przypadku
powyższych definicji należy używać nazw bez prefixu FP
i backslashaUwaga: nie działa minus unarny, należy użyć operatora neg |
| \FPiflt#1#2...\else...\fi | jeśli #1 < #2 |
| \FPifeq#1#2...\else...\fi | jeśli sym{#1 = #2} |
| \FPifgt#1#2...\else...\fi | jeśli #1 > #2 |
| \FPifneg#1 ...\else...\fi | jeśli ujemny (#1 < 0) |
| \FPifpos#1 ...\else...\fi | jeśli nieujemny (#1 >= 0) |
| \FPifzero#1...\else...\fi | jeśli zero (#1 = 0) |
| \FPifint#1 ...\else...\fi | jeśli całkowity (#1) |
| \ifFPtest ...\else...\fi | ostatnio wykonany test |
| \FPlsolve#1#2#3 | oblicz #1 := x tak, aby
#2 * x + #3 = 0 |
| \FPqsolve#1#2#3#4#5 | oblicz
#1,#2 := x tak, aby #3 * x^2 + #4 * x + #5 = 0 |
| \FPcsolve#1#2#3#4#5#6#7 | oblicz
#1,#2,#3 := x tak aby
#4 * x^3 + #5 * x^2 + #6 * x + #7 = 0 |
| \FPqqsolve#1#2#3#4#5#6#7#8#9 | oblicz
#1,#2,#3,#4 := x tak aby
#5 * x^4 + #6 * x^3 + #7 * x^2 + #8 * x + #9 = 0 |
Włodzimierz Macewicz