Tartalomjegyzék
Számológép
- Szerző: Sallai András
- Copyright © 2019, Sallai András
- Licenc: CC BY-SA 4.0
- Web: https://szit.hu
bc
A bc alap a parancssoros felületeken. A bc egy interaktív parancssor, amely várja hogy begépeljük a kifejezéseinket, amelyet az kiértékel.
Indulás után ehhez hasonlót kell lássunk:
$ bc bc 1.06.95 Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc. This is free software with ABSOLUTELY NO WARRANTY. For details type `warranty'.
A kifejezések utánt <Enter>-t nyomva, kiértékeli azokat.
3+5 8 3*5 15
Az „+”, „*” stb. operátorok előtt és utána tehetünk szóközt is.
Osztás
Az osztás a „/” jellel lehetséges. Beírom 8/4 kiírja az eredményt:
8/4 2
De egy 3/2 osztás esetén marad tört rész is ami alapból nem jelenik meg.
3/2 1
A kijelezett tizedesrészeket a scale változó beállításával szabályozhatjuk:
scale=2 3/2 1.50
scale=2 1/3 .33
Maradékképzés
Maradékképzéshez a % operátort használjuk. A scale=0 beállítás szükséges (ez az alapértelmezés), mert másként nem egész osztást történik.
5%3 2
Hatványozás
2^3
Gyökvonás
sqrt(9)
Szabványos matematikai könyvtárak
A szabványos matematikai könyvtárakat a -l kapcsolóval használhatjuk.
bc -l
Így használhatók például trigonometriai függvények. 1° szinusza például:
s(1*3.14/180)
Szabványos bemenet
A bc képes használni a szabványos bemenetet is, így használható akár scriptekben is.
echo "3+5" | bc
echo "scale=2; 1/3" | bc
Ha egy változóban szeretnénk eltárolni az értékét:
a=`echo "3+5" | bc`
vagy:
a=$(echo "3+5" | bc)
Ügyeljünk arra, hogy a bc tizedes pontokkal dolgozik tört számok esetén.
Formázott kimenet
Ha printf utasítást használjuk a bc kimenetét formázva is kiírathatjuk. A tizedes vesszők és a tizedes pontok azonban gondot okozhatnak. Amíg a bc tizedes ponttal dolgozik, a printf a magyar környezet esetén tizedes vesszőt használ. A bc kimenetében így a tizedes pontot le kekll cserélnünk tizedes vesszőre; ezt a tr parancs megoldja számunkra:
printf "%f\n" $(echo "scale=2; 5/4" | bc | tr . ,)
printf "%010.2f\n" $(echo "scale=2; 5/4" | bc | tr . ,)
printf "%08d\n" $(echo "ibase=16;obase=2;32" | bc) 00110010
printf "%08d\n", $(echo "ibase=16;obase=2;2B" | bc) 00101011
wcalc
Telepítés
apt install wcalc
Indítás
Indítás után a következő képernyő fogad minket:
$ wcalc Enter an expression to evaluate, q to quit, or ? for help: ->
Egyszerű aritmetika
-> 3+5 = 8 ->
Hatványozás
-> 2^4 = 16 ->
Trigonometria
A wcalc fokban várja az értékeket, így nem szükséges átszámítani radiánba azt.
-> sin(1) = 0.0.174524 ->
Használható függvények:
- sin cos tan cot asin acos atan acot
- sinh cosh tanh coth asinh acosh atanh acoth
Szabványos bemenet
Szabványos bemenet is használható:
echo 1/3 | wcalc
Az egyenlőség jel a kimenetben kikapcsolható:
printf "%.2f\n" $(echo 1/3 | wcalc -q | tr . ,)
concalc
Telepítés:
apt install concalc
Szabványos operátorok:
+ - * / ^ % sin cos tan asin acos atan sinh cosh tanh asinh acosh atanh ln log & | ! && || ~ >> << x rnd sqrt curt root integ d/dx
Négyzetgyök és köbgyök:
sqrt12 curt8
Trigonometriai függvények és logaritmus:
sin3.64+ln5
Más gyök:
9 a negyedik gyök alatt: 4root9
Differenciál számítások:
2x^2-3x+3 ha x=9:
d/dx(2x^2-3x+3,9)
Integrálás:
sinx+cosx integrálása -1 és 3.2 között:
integ(sinx+cosx,-1,3.2)
Állandók:
- e euler állandó
- pi PI értéke
Aritmetika
echo "3+5" | concalc
Trigonometria
echo "sin(1*pi/180)" | concalc
sc
Az sc valójában táblázatkezelő. vi szerű parancsokkal használható. Azonnali számításokhoz:
sc -n
A függvények neve elé szüksges egy @ karakter:
=@sum(a0:a5)
A sorok számozása 0-val kezdődik.
Mentés:
P
Nagy p betűt kell írni, majd begépelni a mentés nevét.
Kilépés:
Ctrl+C
apcalc
Telepítés:
apt install apcalc
Indítás:
calc
Trigonometria:
sin(1*3.14/180)