| Première version | |
|---|---|
| Type | Langage de programmation Utilitaire UNIX(d) |
bc, abréviation de « basic calculator » (« calculatrice basique »), est uninterpréteur de commandesUnix qui permet d'effectuer des calculs enarithmétique multiprécision. Sa syntaxe est proche dulangage C.
bc peut interpréter unscript ou être invoqué enligne de commande, de façon interactive. Dans ce dernier cas, il suffit de taper en ligne de commande :bc, puis de saisir une expression mathématique, par exemple(1 + 3) * 2, et une fois entré cette ligne, l'interpréteur affichera8.
Bien que bc effectue des calculs en arithmétique multiprécision (donc sans passer par la représentation envirgule flottante), il est réglé par défaut sur un résultat arrondi à l'unité : ainsi l'expression2/3 renverra le résultat0. L'option-l (taperbc -l) déclenche un arrondi par défaut à 20 décimales, tout en intégrant quelques fonctions mathématiques courantes à l'interpréteur (sin, cos, atan, ln, exp essentiellement).
bc, écrit par deux chercheurs desBell Labs (le cryptographeRobert Morris Sr. (en)[1] etLorinda Cherry) a été intégré à Unix en 1975 (version 6). Ses auteurs avaient d'abord écrit un interpréteur arithmétique multiprécision utilisant lanotation polonaise inverse :dc (desk calculator). bc n'est, fondamentalement, qu'unpréprocesseur de dc, et c'est un programme très court (il est obtenu par traitement d'un seul fichier paryacc) qui ne fait que traduire les expressions algébriques en notation polonaise inverse avant d'appeler dc.
Depuis 1991,POSIX a normalisé la syntaxe de bc. Il en existe aujourd'hui deux implémentations : celle d'Unix, qui est un préprocesseur de dc, que l'on retrouve sur le système d'exploitationPlan 9 ; l'autre estGNU bc, publié en 1991 par Philip A. Nelson.
$bcbc1.06.95Copyright1991-1994,1997,1998,2000,2004,2006FreeSoftwareFoundation,Inc.ThisisfreesoftwarewithABSOLUTELYNOWARRANTY.Fordetailstype`warranty'.1+12scale=20sqrt(2)1.41421356237309504880
| Aide | ||
|---|---|---|
| Environnementutilisateur | ||
| Gestion deprocessus | ||
| Manipulation detexte | ||
| Programmationshell | ||
| Recherche | ||
| Réseau | ||
| Système de fichiers | ||
| Divers | ||