Bc (lenguaje de programación)

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda

bc es un lenguaje de programación de cálculo numérico con precisión arbitraria, con una sintaxis similar a la del lenguaje de programación C.

El lenguaje y su intérprete son una herramienta estandarizada de los sistemas UNIX.

El intérprete de bc puede ser usado de forma interactiva, escribiendo expresiones como (1 + 3) * 2 que son evaluadas y su valor escrito en la salida estándar (8 en el ejemplo anterior).

Hay actualmente dos dialectos principales: el rigurosamente definido POSIX bc y un descendiente directo suyo, GNU bc, que incorpora numerosas extensiones.

bc permite la definición de funciones matemáticas. Además las implementaciones de bc incorporan una biblioteca matemática con funciones predefinidas (y estandarizadas) tales como coseno o función de Bessel.

También posee estructuras que permiten la programación estructurada tales como bucles o decisiones condicionales.

Ejemplos[editar]

Un cálculo simple:

bc
 5+2*3
 ^D

Algo un poco más complejo:

bc
 b=1
 for (a=5;a>1;a--) b=b*a
 ^D

A continuación se presentarán dos funciones, i y p. La función i devuelve la parte entera de cualquier número; y la función p (que se apoya en la anterior función) calcula:

p(x, y) = x^y

permitiendo que y sea cualquier número (no solamente un entero).

/* Una función que devuelve la parte entera de x */
define i((x)) {
   auto s
   s = scale
   scale = 0
    x /= 1   /* redondea x */
   scale = s
   return (x)
}
/* x^y == e^(y*log(x)) */
define p(x,y) {
   if (y == i(y)) {
      return (x ^ y)
   }
   return ( e( y * l(x) ) )
}