Une calculatrice en ligne de commande

Sous Debian/Ubuntu, il existe une commande qui permet de transformer la console en calculatrice.

Cette commande s'appelle bc.

Pour l'installer :

$ apt-get install bc

Utilisation (en rouge les résultats affichés) :

$ bc
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
5*8
40
15+9
24
45/8
5

Sans option, la commande bc exécute les calculs sans les décimales.

Pour afficher les décimales, il suffit d'utiliser l'option -l

$ bc -l
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
5*8
40
9-5
4
6+8
14
40/5
8.00000000000000000000
45/8
5.62500000000000000000

Par défaut, l'option -l affiche 20 chiffres après la virgule.
Pour modifier cette valeur, il suffit d'utiliser la fonction scale.

$ bc -l
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
scale=5
45/8
5.62500

Il est également possible d'utiliser des variables.

$ bc -l
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
scale=5
a=10
b=3
c=a+b
d=a-b
e=a*b
f=a/b
c
13
d
7
e
30
f
3.33333
 
Les différentes fonctions mathématiques ne sont pas oubliées.
 
$ bc -l
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
scale=5
5^3         #PUISSANCE
125
sqrt(9)     #RACINE CARREE
3.00000
45%8        #MODULO
0
scale=0
45%8        #MODULO
5
 
ATTENTION, pour le modulo, initialiser le scale à 0 avant l'opération.
 

Calculer la valeur de pi :

pi est égal à 4 fois l'arc tangente de 1 radian.

$ bc -l
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
pi=4*a(1)     # On calcul la valeur de pi
pi
3.14159265358979323844
 
Convertir des degrés en radian et inversement :
 
$ bc -l
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
pi=4*a(1)     # On calcul la valeur de pi
pi
3.14159265358979323844
45*(pi/180)     # 45 degrés en radian
.78539816339744830920
.78539816339744830920*(180/pi)     # 0.78.... radian en degrés
44.99999999999999997650
 
et les sinus, cosinus et arc tangente
 
$ bc -l
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
pi=4*a(1)     # On calcul la valeur de pi
r=45*(pi/180)     # On convertit les degrés en radian (45°)
s(r)    # On calcul le sinus
.70710678118654752410
c(r)     # On calcul le cosinus
.70710678118654752469
a(r)     # On calcul l'arc tangente
.66577375002835386333
 
Toute l'aide disponible avec : 
 
$ man bc
 
Il est également possible d'utiliser la commande bc pour initialiser une variable bash :
 
$ PI=$(echo "scale=10; 4*a(1)" | bc -l)
$ echo $PI
3.1415926532

 

Etiquettes: