Cómo sumar todos los números en una matriz en PowerShell
¿Quiere sumar todos los números en una matriz de PowerShell? En este tutorial de PowerShell, explicaré cómo sumar todos los números en una matriz en PowerShell.
Para sumar todos los números en una matriz en PowerShell, use el cmdlet Measure-Object con el parámetro -Sum. Por ejemplo, $total=($array | Medida-Objeto -Sum).Sum calculará la suma de todos los valores numéricos en $array. Esta es una forma eficaz de obtener el total de una colección de números rápidamente.
Sumar todos los números en una matriz en PowerShell
Una matriz es una estructura de datos que contiene una colección de elementos. Estos elementos pueden ser números, cadenas o cualquier otro tipo de objeto. En PowerShell, las matrices se crean separando elementos con comas.
$numbers = 1, 2, 3, 4, 5 # This is an array of numbersAhora, veamos cómo sumar o sumar todos estos números de esta matriz en PowerShell usando varios métodos.
Método 1: usar un bucle ForEach
La forma más sencilla de sumar números en una matriz es mediante el uso de un bucle ForEach en PowerShell. Este bucle recorre en iteración cada número de la matriz y lo agrega a una variable de suma.
$numbers = 1, 2, 3, 4, 5
$sum = 0 # Initialize sum to zero
foreach ($number in $numbers) {
$sum += $number # Add each number to the sum
}
Write-Output "The sum is: $sum"
Después de ejecutar el código usando el código VS, puede ver el resultado en la siguiente captura de pantalla:
Método 2: uso del cmdlet Medir objeto
PowerShell proporciona un cmdlet llamado Measure-Object que puede realizar cálculos sobre las propiedades de los objetos, incluida la suma de números en una matriz.
$numbers = 1, 2, 3, 4, 5
$sum = ($numbers | Measure-Object -Sum).Sum # Use Measure-Object to sum the numbers
Write-Output "The sum is: $sum"El cmdlet Measure-Object es una herramienta poderosa y también se puede utilizar para calcular otra información estadística, como el recuento, el promedio, el máximo y el mínimo.
Método 3: uso del cmdlet ForEach-Object
Otra forma de sumar números en una matriz en PowerShell es usar el cmdlet ForEach-Object con -Begin, -Process y -Fin parámetros.
Aquí hay un script de PowerShell completo:
$numbers = 1, 2, 3, 4, 5
$sum = 0 # Initialize sum to zero
$numbers | ForEach-Object -Begin { $sum = 0 } -Process { $sum += $_ } -End { Write-Output "The sum is: $sum" }En este ejemplo, el bloque -Begin inicializa la variable de suma, el bloque -Process actualiza la suma con cada número y el bloque -End genera la suma total.
Método 4: uso de la acumulación de matrices
PowerShell también le permite acumular directamente una matriz en un solo valor utilizando el operador += dentro de un bucle. Este es otro método para sumar todos los números en una matriz de PowerShell.
$numbers = 1, 2, 3, 4, 5
$sum = 0 # Initialize sum to zero
for ($i = 0; $i -lt $numbers.Length; $i++) {
$sum += $numbers[$i] # Add each number to the sum
}
Write-Output "The sum is: $sum"Este método es similar al bucle ForEach pero utiliza un bucle for para iterar sobre los índices de la matriz.
Método 5: usar Linq
Para aquellos que se sienten cómodos con .NET, PowerShell puede usar la biblioteca Linq para sumar números en una matriz.
Add-Type -AssemblyName System.Linq
$numbers = 1, 2, 3, 4, 5
$sum = [System.Linq.Enumerable]::Sum([System.Collections.Generic.List[int]]$numbers)
Write-Output "The sum is: $sum"
Este método es más avanzado e implica convertir la matriz en una lista genérica en la que puede operar el método Sum.
Conclusión
En este tutorial de PowerShell, he explicado cómo sumar todos los números en una matriz en PowerShell usando varios métodos:
- Usando un bucle ForEach
- Uso del cmdlet Medir objeto
- Uso del cmdlet ForEach-Object
- Usando la acumulación de matrices
- Usando Linq
