Cómo redondear números en PowerShell

  1. Truncando Números en PowerShell
  2. Redondeando Hacia Abajo a Números Enteros en PowerShell
  3. Redondeando Hacia Arriba a Números Enteros en PowerShell
  4. Redondeando a la Media Arriba (Redondeo Aritmético) en PowerShell
  5. Redondeo en General en PowerShell
  6. Conclusión
Cómo redondear números en PowerShell

Al trabajar con números en PowerShell, hay varios escenarios en los que puede necesitar redondearlos a lugares decimales específicos o convertirlos en números enteros.

Este artículo explora cómo lograr un redondeo preciso de números en PowerShell utilizando funciones de la clase Math del marco .NET.

Truncando Números en PowerShell

Truncar en PowerShell puede no ser precisamente una función que redondea un número, pero aún se considera calcular una parte integral del número. En otras palabras, el método elimina la parte decimal del entero, redondeándolo hacia abajo al número entero más cercano.

Para truncar (o recortar) un número, utilizaremos la función de la clase Math llamada [Math]::Truncate. Esta acepta un entero con un tipo de dato Double, los números decimales.

Sintaxis:

[Math]::Truncate(variable)
  • variable: Esta es la variable que contiene el número decimal que desea truncar. Es la entrada para el método Truncate.

Código de ejemplo:

$decimalNum = 63.82

[Math]::Truncate($decimalNum)

En este código, primero asignamos el número decimal 63.82 a la variable $decimalNum. Luego, utilizamos la función [Math]::Truncate para truncar este número decimal.

Truncar significa eliminar la parte decimal y obtener el número entero más cercano, que en este caso es 63, como se muestra en la salida.

Salida:

63

Redondeando Hacia Abajo a Números Enteros en PowerShell

El [Math]: Floor es una función de la clase Math de PowerShell que recorta la parte decimal del entero y lo redondea hacia abajo matemáticamente a un número entero en el backend.

Sintaxis:

[Math]::Floor(variable)
  • variable: Esta es la variable que contiene el valor numérico que desea redondear hacia abajo. Es la entrada para el método Floor.

Código de ejemplo:

$decimalNum = 63.82

[Math]::Floor($decimalNum)

En este código, primero asignamos el número decimal 63.82 a la variable $decimalNum. Luego, utilizamos la función [Math]::Floor para redondear hacia abajo este número decimal al número entero más cercano, que es 63.

Salida:

63

Redondeando Hacia Arriba a Números Enteros en PowerShell

El [Math]::Ceiling es una función de la clase Math de PowerShell que redondea el número decimal al número entero más cercano hacia arriba.

Sintaxis:

[Math]::Ceiling(variable)
  • variable: Esta es la variable que contiene el número decimal que desea redondear hacia arriba. Es la entrada para el método Ceiling.

Código de ejemplo:

$decimalNum = 63.82

[Math]::Ceiling($decimalNum)

En este código, primero asignamos el número decimal 63.82 a la variable $decimalNum. Luego, utilizamos la función [Math]::Ceiling para redondear hacia arriba este número decimal al número entero más cercano, que es 64.

Salida:

64

Redondeando a la Media Arriba (Redondeo Aritmético) en PowerShell

El redondeo aritmético es un método de redondeo común donde los números que terminan en 0.5 o más se redondean hacia arriba. La función [Math]::Round de PowerShell se puede utilizar para el redondeo aritmético sin especificar un modo de redondeo.

Sintaxis:

[Math]::Round(variable)
  • variable: Esta es la variable que contiene el número decimal que desea redondear. Es la entrada para el método Round.

Código de ejemplo:

$decimalNum = 63.5
[Math]::Round($decimalNum)

En este código, primero asignamos el número decimal 63.5 a la variable $decimalNum. Luego, utilizamos la función [Math]::Round para redondear este número decimal al número entero más cercano.

Al utilizar este método sin especificar un modo de redondeo, sigue la regla de "Redondeo a la Media Arriba", lo que significa que los números iguales o mayores que 0.5 se redondean hacia arriba al entero más cercano, que es 64 en este caso.

Salida:

64

Redondeo en General en PowerShell

También podemos utilizar la función oficial [Math]::Round para tener más flexibilidad que redondear a un número entero.

La función [Math]::Round acepta dos argumentos. El primer argumento es el número decimal que la función redondeará, y el segundo argumento es el lugar decimal al que se redondeará el número (0 para el número entero, 1 para un número decimal, 2 para dos números decimales, y así sucesivamente).

Sintaxis:

[Math]::Round(par1, par2)
  • par1: Este es el primer parámetro que pasa al método Round. Representa el número que desea redondear.
  • par2: Este es el segundo parámetro que pasa al método Round. Representa el número de lugares decimales a los que desea redondear el número especificado en par1.

Código de ejemplo:

$decimalNum = 63.827439

[Math]::Round($decimalNum, 0)
[Math]::Round($decimalNum, 1)
[Math]::Round($decimalNum, 2)
[Math]::Round($decimalNum, 5)

En este código, tenemos un número decimal 63.827439 asignado a la variable $decimalNum. Luego utilizamos la función [Math]::Round para realizar múltiples redondeos con diferentes cantidades de lugares decimales.

Cada vez, la función redondea el número decimal al número de lugares decimales proporcionados y muestra el valor correspondiente.

Salida:

64
63.8
63.83
63.82744

Conclusión

En PowerShell, lograr un redondeo preciso de números es esencial para cálculos precisos. Puede redondear fácilmente números hacia arriba y hacia abajo o realizar otras operaciones de redondeo utilizando la clase Math del marco .NET.

Estas funciones proporcionan la flexibilidad necesaria para adaptar sus cálculos a sus requisitos específicos, asegurando precisión en sus scripts de PowerShell.

¿Disfrutas de nuestros tutoriales? Suscríbete a DelftStack en YouTube para apoyarnos en la creación de más guías en vídeo de alta calidad. Suscríbete
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn