třeba proto, že je všude, ve všem a není problém ho dát i na ten nejjednodušší systém – nezabírá místo.
Navíc hodně užitečná věc je převod mezi (libovolnými) soustavami.
jinak škoda, že neumí nic jiného (alespoň trigonometrické a logaritmické funkce)
taky se občas hodí jako „výpočetní jádro“ v jednodušších skriptech skriptech
Kdyz se bc spusti s paramentrem -l tak i trigonometricke funkce je mozne pouzit – viz man: s(x), c(x), a(x), l(x), e(x), j(n,x)
Byl tu zmineny python, ale jinak je zajimave, ze tu nikdo jeste nezminil matematicke schopnosti jineho veterana – awk – ten je mozna v jistych ohledech jako jednoducha kalkulacka predvidatelnejsi:
awk 'BEGIN{
print "1+3=" (1+3) ;
print "1/3=" (1/3) ;
print "2^2.5=" (2^2.5) ;
print "10^8=" (10^8) ;
print "sin(45)=" (sin(45));
today=systime();
print "today=" strftime("%d.%m.%Y",today);
someday=mktime("2009 12 29 12 00 00")
week=7*24*60*60;
print strftime("%Y/%m/%d",someday) " + 1 week = " strftime("%Y/%m/%d",someday+week);
}'
1+3=4
1/3=0.333333
2^2.5=5.65685
10^8=100000000
sin(45)=0.850904
today=03.02.2010
2009/12/29 + 1 week = 2010/01/05
http://pari.math.u-bordeaux.fr/
myslim ze bc je jen slabej odvar
Místo kalkulačky se dnes používá wolfram alpha – http://www.wolframalpha.com/
To byste měli vědět. bc je relikt minulosti.
bc spustit takto: bc -l
# A function to return the integer part of a number
define int(number) {
auto oldscale
oldscale = scale
scale = 0
number /= 1 /* round number down */
scale = oldscale
return number
}
# Use the fact that number^exponent == e^(exponent*log(number))
define power(number,exponent) {
if (exponent == int(exponent)) {
return number ^ exponent
} else {
return e( exponent * l(number) )
}
}
power(27, 1/3)
2.99999999999999999995
Dekuji za clanek Petru Krcmarovi.
Bohuzel mi v clanku trochu chybi „Proc“, kterym snad mel clanek zacit, stejne jako jim zacina manualova stranka.
Tim co dela bc zvlastnim je volitelna presnost vypoctu.
bc – An arbitrary precision calculator language
Pomoci length a scale je mozne ovladat presnost (pocet desetinnych mist na ktere se ma pocitat)
Chcete pi na 1000 desetinnych mist?
bc -l << EOF
scale=1000
pi=4*a(1)
pi
EOF
<Samochvala>Tu je kalkulacka co pocita matematicke operacie na 250 desatinych miest/<Samochvala>
http://www.studna.cz/14665/aplikace-pro-kancelar-nebo-domacnost/kalkulatory/1st-infinity-calculator/