Siguiente: Funciones y variables para los números, Anterior: Números, Subir: Números [Índice general][Índice]
Los cálculos aritméticos con números enteros y racionales son exactos. En principio, los números enteros y racionales admiten una cantidad arbitraria de cifras, con la única limitación que impongan las capacidades de memoria del sistema.
(%i1) 1/3+5/4+3; 55 (%o1) -- 12 (%i2) 100!; (%o2) 9332621544394415268169923885626670049071596826438162146859\ 2963895217599993229915608941463976156518286253697920827223758251\ 185210916864000000000000000000000000 (%i3) 100!/101!; 1 (%o3) --- 101
Funciones disponibles para los números enteros y racionales:
integerp numberp nonnegintegerp oddp evenp ratnump rationalize
Maxima hace los cálculos con números decimales en coma flotante en doble precisión. Además, Maxima puede hacer cĺculos con números decimales grandes en coma flotante (bigfloats, en inglés), que, en principio, admiten precisión arbitraria.
La coma de los números decimales en coma flotante se escribe con un punto y el exponente se puede indicar con "f", "e" o "d". Por defecto, Maxima hace los cálculos en doble precisión y muestra el exponente como "e" en el resultado, mientras que representa el exponente con la letra "b" en el caso de decimales grandes de precisión arbitraria. Maxima no distingue si la letra del exponente se escribe en minúscula o mayúscula.
(%i1) [2.0,1f10,1,e10,1d10,1d300]; (%o1) [2.0, 1.e+10, 1, e10, 1.e+10, 1.e+300] (%i2) [2.0b0,1b10,1b300]; (%o2) [2.0b0, 1.0b10, 1.0b300]
Si en un cálculo aritmético aparece un número decimal en coma flotante, se producirá un efecto de contagio que hará que el resultado se devuelva también como decimal. Esto también es cierto para el caso de decimales grandes de precisión arbitraria.
(%i1) 2.0+1/2+3; (%o1) 5.5 (%i2) 2.0b0+1/2+3; (%o2) 5.5b0
Con las funciones float
y bfloat
se puede convertir
un número en decimal de doble precisión, o de precisión
arbitraria, respectivamente:
(%i1) float([2,1/2,1/3,2.0b0]); (%o1) [2.0, 0.5, .3333333333333333, 2.0] (%i2) bfloat([2,1/2,1/3,2.0b0]); (%o2) [2.0b0, 5.0b-1, 3.333333333333333b-1, 2.0b0]
Funciones y variables disponibles para números decimales:
float floatnump bfloat bfloatp fpprec float2bf bftorat ratepsilon number_pbranch m1pbranch
Maxima no tiene un tipo de dato especíco para
números complejos; éstos se representan internamente como
la suma de la parte real y la imaginaria multiplicada por el
símbolo %i
, que hace las veces de unidad
imaginaria. Por ejemplo, las raíces de la ecuación
x^2 - 4*x + 13 = 0
se representan como 2 + 3*%i
y
2 - 3*%i
.
Maxima no simplifica automáticamente productos, cocientes,
raíces y otras expresiones con números complejos.
Por ejemplo, para hacer la multiplicación de números
complejos se puede utilizar la función expand
.
Funciones disponibles para los números complejos:
realpart imagpart rectform polarform cabs carg conjugate csign
Siguiente: Funciones y variables para los números, Anterior: Números, Subir: Números [Índice general][Índice]