Tipos numéricos en Go (Enteros y Flotantes)

¿Qué son los tipos numéricos ?

En el lenguaje de programación Go, tenemos diferentes tipos numéricos que nos permiten trabajar con valores enteros y flotantes. Estos tipos de datos son fundamentales en muchas aplicaciones y nos brindan la capacidad de realizar cálculos matemáticos precisos. En este artículo, exploraremos los tipos numéricos en Go, centrándonos en los enteros y los flotantes.

Enteros

Los enteros son números sin parte decimal y se dividen en diferentes tamaños y signos en Go. Los siguientes son los tipos enteros disponibles en Go:

int

Este tipo entero se adapta al tamaño de la arquitectura subyacente y puede ser de 32 o 64 bits dependiendo del sistema en el que se esté ejecutando.

var edad int = 33

int8, int16, int32, int64

Estos tipos enteros tienen un tamaño fijo de 8, 16, 32 y 64 bits, respectivamente. El número que sigue a int indica el número de bits utilizados para almacenar el valor.

uint8, uint16, uint32, uint64

Estos tipos enteros sin signo tienen el mismo tamaño que sus contrapartes con signo (int8, int16, int32, int64), pero no tienen signo. Esto significa que solo pueden representar valores positivos y tienen un rango más amplio de valores que los enteros con signo.

Además de estos tipos enteros básicos, Go también proporciona alias de tipo para facilitar la legibilidad del código, como byte (equivalente a uint8) y rune (equivalente a int32).

Flotantes

Los números flotantes representan valores con parte decimal. En Go, tenemos dos tipos flotantes:

const PI float32 = 3.1416

float32

Este tipo flotante de 32 bits puede representar números en coma flotante con una precisión de aproximadamente 7 dígitos decimales.

float64

Este tipo flotante de 64 bits tiene una mayor precisión y puede representar números en coma flotante con aproximadamente 15 dígitos decimales.

Es importante tener en cuenta que los números flotantes no pueden representar con precisión todos los valores reales debido a las limitaciones de la representación binaria. Por lo tanto, es posible que se produzcan pequeños errores de redondeo en operaciones aritméticas con números flotantes.

Ejemplos de tipos numéricos

La siguiente tabla describe los tipos de valores numéricos posibles.

tipo tamaño rango
int8 8 bits -128 a 127
int16 16 bits -2^15 a 2^15 -1
int32 32 bits -2^31 a 2^31 -1
int64 64 bits -2^63 a 2^63 -1
uint8 8 bits 0 a 255
uint16 16 bits 0 a 2^16 -1
uint32 32 bits 0 a 2^32 -1
uint64 64 bits 0 a 2^64 -1

Ejemplos de valores decimales expresados como binarios

Binario Decimal
0000 0
0001 1
0010 2
0011 3
0100 4
1111 16

Acerca de los valores numéricos

Todos estos constituyen posibles tipos numéricos, sin embargo a nivel de la computadora todos se guardan como valores binarios (0 y 1). Un bit equivale ya sea a un 0 o un 1. Para un campo de 4 bits por ejemplo, se pueden almacenar 16 números.

También es importante hacer notar que los valores enteros “signed” incluyen números positivos y negativos. Mientras que los unsigned solo números positivos.

El número máximo que puede ser utilizado por una computadora, depende de la arquitectura de esta. En los equipos de 64 bits de hoy en día esto representa el entero 9223372036854775807.

Valores máximos y mínimos

En Go, podemos obtener los valores máximos y mínimos que pueden ser representados por los tipos numéricos utilizando las constantes predefinidas en el paquete math. Por ejemplo, podemos acceder al valor máximo de un entero de 32 bits utilizando math.MaxInt32 y al valor mínimo de un flotante de 64 bits utilizando math.SmallestNonzeroFloat64.

maxEntero32 := math.MaxInt32
minFlotante64 := math.SmallestNonzeroFloat64

Los tipos numéricos en Go nos brindan la capacidad de representar y manipular valores enteros y flotantes en nuestros programas. Con una variedad de operaciones y funciones matemáticas disponibles, podemos realizar cálculos precisos y tomar decisiones basadas en valores numéricos.

Otros Artículos

VPN

  • Ir a la oferta de NordVPN

Moda

Accesorios