Bucle
La forma más simple y común de agregar elementos a una matriz es usar un bucle. Comenzamos definiendo una variable para almacenar la suma de valores e inicializarlo a 0. A continuación, iteramos sobre cada elemento en la matriz y los agregamos a la variable de suma.
Tome la matriz de ejemplo que se muestra a continuación:
edad = [10, 87, 34, 23, 54, 44, 23, 11, 5]
Para agregar todos los valores de la matriz anterior, comience definiendo una variable de suma e inicializándola a 0
suma = 0
A continuación, cree un bucle para iterar cada elemento y agréguelo a la variable de suma como:
edad = [10, 87, 34, 23, 54, 44, 23, 11, 5]
suma = 0
para yo en edades
suma += i
fin
Ponga suma
Una vez que ejecute el código anterior, debe obtener la suma de todos los elementos en la matriz anterior.
Cada método
Ruby tiene un método predeterminado para iterar sobre los elementos en una matriz. Acepta un bloque que podemos usar para calcular la suma de todos los elementos.
El método funciona de manera similar a un bucle para que se muestra arriba.
Por ejemplo:
edad = [10, 87, 34, 23, 54, 44, 23, 11, 5]
suma = 0
siglos.cada do | i |
suma += i
fin
Ponga suma
El valor resultante es la suma de todos los valores en la matriz:
=> 291
Método de suma
En la versión más reciente de Ruby, puede usar el método de suma para agregar todos los elementos en una matriz.
Por ejemplo:
edad = [10, 87, 34, 23, 54, 44, 23, 11, 5]
Ponga edades.suma
Método de inyección
Ruby tiene un método llamado inyección. Toma cada elemento en un enumerador y lo acumula secuencialmente.
Por ejemplo:
edad = [10, 87, 34, 23, 54, 44, 23, 11, 5]
Ponga edades.inyección (:+)
El método de inyección toma el primer elemento en la matriz y lo trata como el valor de suma inicial. El método continúa iterando todos los elementos en la matriz, agregando cada uno de ellos juntos.
Una vez que el método alcanza el final de la matriz, trata el valor final como la suma total de la matriz.
También puede definir un valor predeterminado para el método de inyección. Tome el ejemplo a continuación que define un valor predeterminado.
edad = [10, 87, 34, 23, 54, 44, 23, 11, 5]
Ponga edades.inyect (0) | suma, i | suma + i
Reducir el método
El método de reducción es muy similar al método de inyección, son como alias. En nuestro ejemplo, utilizaremos el método de mapa para devolver elementos individuales en la matriz como enteros.
edad = [10, 87, 34, 23, 54, 44, 23, 11, 5]
siglos.mapa (&: to_i)
Una vez que tenemos todos los elementos de la matriz, podemos llamar al método Reducir como:
Reducir (:+)
La sintaxis anterior debe devolver la suma de todos los elementos en la matriz.
edad = [10, 87, 34, 23, 54, 44, 23, 11, 5]
Ponga edades.mapa (&: to_i).Reducir (:+)
Conclusión
Esta guía ha ilustrado varias formas de agregar todos los elementos en una matriz.