$ echo $(( 100 / 3 )) 33 $ myvar="56" $ echo $(( $myvar + 12 )) 68 $ echo $(( $myvar - $myvar )) 0 $ myvar=$(( $myvar + 1 )) $ echo $myvar 57
Toplama
$ echo '57+43' | bc 100
Çıkarma
$ echo '57-43' | bc 14
Çarpma
$ echo '57*43' | bc 2451
scale değişkeni sonucun virgülden sonrası için gösterilecek basamak adedini belirler.
Default değeri 0 dır.
-l ile kullanılırsa değeri 20 kabul edilir.
Bölme
$ echo 'scale=25;57/43' | bc 1.3255813953488372093023255
Karekök alma
$ echo 'scale=30;sqrt(2)' | bc 1.414213562373095048801688724209
Üs almak
$ echo '6^6' | bc 46656
Değişik tabanlarda işlem yapmak için obase ve ibase kullanabiliriz.
obase output tabanını belirler ve 2 ila 999 arasında değer alabilir.
ibase input tabanını belirler ve 2 ila 16 arasında değer alabilir.
255 sayısını 10 tabanından 16 tabanına çevirme:
$ echo 'obase=16;255' | bc FF
2 tabanındaki sayıyı 10 tabanına çevirmek
$ echo 'ibase=2;obase=A;10' | bc 2
bc’yi bash içinde kullanmak için
$ FIVE=5 ; echo "$FIVE^2" | bc 25
bc’ye dosyadan işlem yaptırmak için “bc -q filename” kullanılabilir.
Dosya içeriği aşagıdaki gibi olabilir.
scale=2 /* C-style comments are allowed, as are spaces */ print "\nConvert Fahrenheit to Celsius\n\n" print "Temperature in Fahrenheit: " ; fah = read() print "\n" print "Equivalent Temperature in Celsius is: " (fah - 32.0) * 5.0 / 9.0 quit
Bir cevap yazın