ABSTRACT: der kommandozeilenrechner bc wird vorgestellt AUDIENCE: users SYSTEM: any unix SECTION: usefull unix applications AUTHOR: mond COPYRIGHT: GNU Free Documentation Licence http://www.gnu.org/licenses/fdl.txt vor kurzem haben wir octave kennengelernt. praktisch fuer numerische berechnungen. fuer kleinere rechnungen ist aber der kommandozeilen rechner "bc" praktischer. "bc" ist ein standard unix tool und die GNU version davon ist noch dazu auch programmierbar, rechnet in beliebiger genauigkeit und hat auch ein paar trigonometrische funktionen eingebaut: echo 5*7^3+1|bc rechnet ohne dass man erst lange ein programm starten muss oder nach dem taschenrechner am schreibtisch suchen muss. per default rechnet bc ohne komastellen. man kann ihm aber mit scale=200 sagen mit welcher genauigkeit er rechnen soll (hier auf 200 nachkommastellen) z.b.: echo scale=200\;1234567/789|bc man kann bc natuerlich auch interaktiv verwenden. bc mit quit kommt man wieder raus. neben scale= ist auch ibase= und obase= nuetzlich. so kann man z.b. leicht zahlen von/nach einem anderen zahlensystem umwandel. z.b.: echo obase=16\;12345|bc wandelt die zahl 12345 von dezimal auf hex um. echo "ibase=2;101*11101"|bc ruft man bc mit der option -l auf so stehen auch einige matehmatische funktionen zur verfuegung: s(x)... sinus c(x)... cosinus a(x)... arcustangens l(x)... natuerlicher logarithmus e(x)... e^x j(n,x) .. bessel funktion nter ordnung. z.b: echo "scale=1000; 4*a(1)" | bc -l gibt pi auf 1000 stellen aus. echo "scale=1000;e(1)" |bc -l gibt e auf 1000 stellen aus. und fuer die dene das noch zu wenig ist hat bc auch eine einfache programmiersprache eingebaut: define fact (n) { auto r; r=1; if (n > 0) r=n*fact(n-1) return(r) } fact(1234) wuerde die faktoriele 1234 rechnen. EXERCISES: * wieviel ist 2+2 ? :-) REFERENCES: man bc