BC ile aritmetik

Temmuz 21st, 2011 § Yorum yok

$ 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

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Ne yapıyorum ben!?

BC ile aritmetik başlıklı yazıyı okuyorsun.

Üst Veri