Velmi pěkné !! Děkujii
Ještě znám proměnné ibase a obase na převod soustav (standardně mají oba hodnotu 10) .. ibase pro vstup, obase pro výstup.. Fakt kuul nástroječek je to
Velmi pěkné !! Děkujii
Ještě znám proměnné ibase a obase na převod soustav (standardně mají oba hodnotu 10) .. ibase pro vstup, obase pro výstup.. Fakt kuul nástroječek je to
„krutoprisne ohromných možností“ :)) horst fuchs by mohl jen zavidet! :)
Řekl bych, že je to narážka na email od seznamu. Pokud totiž při registraci zadáte hooodně dlouhé heslo tak to vyplivne takovouhle hlášku.
A neni to nahodou ze stoparova pruvodce?
V příkladu se smyčkou je chybička, inicializuje se x, ale v cyklu se používá a:
$ bc
x=0
while(a<10{
…
No, nechci rejpat, ale ještě tam u while za desítkou chybí pravá kulatá závorka :-)
To člověk myší tam olízne o znak míň, tu zase příliš inteligentní editor uplatní svůj názor na nějaký znak…
Ano.. jeste jedna chybicka se pri kopirovani vloudila… za while chybi ona prava kulata zavorka
Zadnou krutoprisnou matematiku v tom nevidim, na podobne veci jako scitani, nasobeni a cykly mam python :)
Jedine vyuziti me napada pri pouziti ve skriptech v bashi, tam se mi libi moznost pocitat pres rouru…
presne .....
python an bc jen kdyz nestaci expr ve scriptech
Připojuju se ke kolegům: proč používat historický bazmek když to jde v pythonu jednoduššeji?
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
>jinak škoda, že neumí nic jiného (alespoň trigonometrické a logaritmické funkce)
Ale umí :-)
bc
scale=100
4*a(1)
3.141592653589793238462643383279502884197169399375105820974944592307\
8164062862089986280348253421170676
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
super, tak to se hodí
tiez ma to hned napadlo
Vy jste to nepochopili. bc je jednoduchy a je vsude. Python neni. Na ostrejsi vypocty uz bc asi nikdo pouzivat dneska nebude. Navic, kdyz se neco pocita doopravdy, tak na to je C.
kdyz se neco pocita doopravdy, tak na to je Matlab ;)
Kdyz se neco pocita doopravdy, tak na to je PDL nebo J.
.bashrc ci pod:
export BC_ENV_ARGS=~/.bc
alias bc=„bc -q“
~/.bc:
scale=3
ja na take vypocty jednoduche i slozitejsi uspesne pouziam octave pusobi na mne mocnejsim dojmem a mozna jednodussim …nehlede na to je tam zarucena jaks taks kompatibilita matlabem, ktery pouzivaji skoly…
Velmi casto koncim v pythonu – dovod je prosty – umi bitwise operace a to zapisem stejnym jako C :-)
Ve skriptech lze casto s uspechem pouzit to co umi sam shell, echo $((1+1)). Ale jinak bc rulez.
Ten používám také. V Debianu se nachází v balíčku apcalc. Zde u bc vidím problém v tom, že standardně má přesnost na 0 míst což je tedy hloupé.
http://pari.math.u-bordeaux.fr/
myslim ze bc je jen slabej odvar
tak jsem si chtel precist nejaky nudny prispevek jestli nahodou se nedovim neco noveho o bc …a vyprskl jsem nahlas smichy :D ne diky obsahu, ale forme :)
jen jsem se zapomel zeptat. jak je to s odmocninama?
napr.
2^(1/3)
1
scale=5
2^(1/3)
Runtime warning (func=(main), adr=9): non-zero scale in exponent
1
ja chci ale dostat 1,25992105 :-(
No, minimalne sa da bc spustit s parametrom -l a potom a^b spocitas jednoducho ako:
e(b*l(a))
Jako že e(2*l(2)) = 3.999999999999999999994 :-)))
Clanek potesil, hlavne ta „.“ (jako predchozi cislo) mi udelala radost. Jinak pokud chci pocitat na desetiny, da se to pustit tako bc -l (odpovida scale=20). Mozna jeste chybi zminka o ibase/obase – prevody z jedne soustavy do druhe, ale na to pouzivam kcalc
O tak rozsahlych moznostech teto utility sem nevedel, rozhodne se to hodi, diky!
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.
To ma byt jako vtip?
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
jenze to pak bc ztraci svoje kouzlo. sila bc je v tom, ze je vsude po ruce (stejne jako vi) a tudiz jde jednoduchym zpusobem pouzit pro rychly jednorazovy vypocet. jestli si musim odmocninu doprogramovat, tak to uz si rovnou pustim nejaky python/perl skript
Jak výše zmiňuji – raději užijte calc (v Debianu v balíčku apcalc).
$ calc
; power(27, 1/3)
3
Pro úplnost dodávám, že v calc funguje i následující zápisy:
27**(1/3)
27^(1/3)
bych pak mohl rovnou> perl -e „print 2**(1/3)“
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
Neskutecne jsem se zasmal a pobavil i kolegy nad jednotlivymi nadpisy :D Hustodemonsky krutoprisne :D :D to uz jsem dlouho nikde nevidel :D Peknee…
(samozrejme chvalim i obsah clanku ;)
<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/
Asi docela hezke, ale bezi to akorat na Widlich. Pisete tam, ze je to GPL, ale nejak tam nevidim odkaz na zdrojak.
Zdrojak bude uvolneny koncom prazdnin 31.8.2010 (taky
mensi markentingovy tah).
Skriptovanie to nedokaze zatial stabilizujem vypocty a optimalizujem na rychlost.
Zajímavé..
– umí to pouze na 250 miest, víc ne?
- lze to skriptovat: mj. číst ze std. vstupu a psát na std. výstup?
Není to kompilované pro Intel Itanium processory (ia64)? :-D Na Intel x86_64 Windows 7 to neběží. Buď mám špatnou verzi MSVC RT (mám jak pro 32bit tak pro 64bit mod), nebo už nevím.
co to je zase za matfyzackou hovadinu a hracku? K cemu to ma byt jako dobre? Kdo potrebuje pocitat, nainstaluje si R, Matlab, Octave, apod …
pekny clanek! diky.
odlehcenym bc je dc, take dobre pouzitelny nastroj…
Myslim ze vela prispevkov svedci o tom kam sa linux dostal. Nie som spokojny s rozsirovanim linux a ziadam aby vsetci debili ktory nepochopili naco je BC rovno linux a unix vobec nepouzivali. Zostante prosim pri vasich windows.