Cómo redondear números en PowerShell
- Truncando Números en PowerShell
- Redondeando Hacia Abajo a Números Enteros en PowerShell
- Redondeando Hacia Arriba a Números Enteros en PowerShell
- Redondeando a la Media Arriba (Redondeo Aritmético) en PowerShell
- Redondeo en General en PowerShell
- Conclusión

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étodoTruncate
.
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étodoFloor
.
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étodoCeiling
.
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étodoRound
.
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étodoRound
. Representa el número que desea redondear.par2
: Este es el segundo parámetro que pasa al métodoRound
. Representa el número de lugares decimales a los que desea redondear el número especificado enpar1
.
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.
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn