Translate

lunes, 5 de febrero de 2024

Números en Erlang

 


En el shell de Erlang, las expresiones deben terminar con un punto seguido de un espacio en blanco (salto de línea, un espacio, etc.); de lo contrario, no se ejecutarán. Puedes separar expresiones con comas, pero solo se mostrará el resultado de la última (las demás aún se ejecutan). Esta es ciertamente una sintaxis inusual para la mayoría de las personas y proviene de los días en que Erlang se implementó directamente en Prolog, un lenguaje de programación lógica.


Abramos el shell Erlang y escribamos:


1> 2 + 15.

17

2> 49 * 100.

4900

3> 1892 - 1472.

420

4> 5 / 2.

2.5

5> 5 div 2.

2

6> 5 rem 2.

1


Deberías haber notado que a Erlang no le importa si ingresas números de punto flotante o enteros: ambos tipos son compatibles cuando se trata de aritmética. Una calculadora con el número '80085' escrito. Los números enteros y los valores flotantes son prácticamente los únicos tipos de datos que los operadores matemáticos de Erlang manejarán de forma transparente. Sin embargo, si desea tener la división de entero a entero, usemos div, y para tener el operador de módulo, usemos rem (resto).


Podemos utilizar varios operadores en una sola expresión y las operaciones matemáticas obedecen a las reglas de precedencia normales.


7> (50 * 100) - 4999.

1

8> -(50 * 100 - 4999).

-1

9> -50 * (100 - 4999).

244950


Si deseamos expresar números enteros en bases distintas a la base 10, simplemente ingresamos el número como Base#Valor (dada que la Base está en el rango 2..36):


10> 2#101010.

42

11> 8#0677.

447

12> 16#AE.

174