Operadores de Arrays
Parte de la sección Fundamentos del Journey de Ruby de Coddy — lección 71 de 88.
Ruby proporciona operadores especiales que te permiten combinar, comparar y manipular arreglos de formas poderosas. Estos operadores facilitan el trabajo con múltiples arreglos a la vez.
El operador + concatena dos arrays en uno nuevo:
a = [1, 2, 3]
b = [4, 5, 6]
combined = a + b
puts combined # Resultado: 1, 2, 3, 4, 5, 6El operador - elimina los elementos del primer array que aparecen en el segundo:
all_numbers = [1, 2, 3, 4, 5]
to_remove = [2, 4]
result = all_numbers - to_remove
puts result # Salida: 1, 3, 5El operador & devuelve elementos comunes a ambos arreglos (intersección):
a = [1, 2, 3, 4]
b = [3, 4, 5, 6]
common = a & b
puts common # Salida: 3, 4El operador | combina arrays y elimina duplicados (unión):
a = [1, 2, 3]
b = [3, 4, 5]
union = a | b
puts union # Salida: 1, 2, 3, 4, 5Todos estos operadores crean nuevos arrays y dejan los arrays originales sin cambios.
Desafío
FácilLee dos líneas de entrada, cada una con números enteros separados por comas:
- El primer array (por ejemplo,
1,2,3,4,5) - El segundo array (por ejemplo,
3,4,5,6,7)
Realiza las siguientes operaciones e imprime los resultados, cada uno en su propia línea:
- Imprime cada elemento de la concatenación de ambos arrays (usando
+) - Imprime
---como separador - Imprime cada elemento de la diferencia (primer array menos el segundo, usando
-) - Imprime
---como separador - Imprime cada elemento de la intersección (elementos comunes, usando
&) - Imprime
---como separador - Imprime cada elemento de la unión (combinados sin duplicados, usando
|)
Por ejemplo, si las entradas son 1,2,3,4,5 y 3,4,5,6,7, la salida debería ser:
1
2
3
4
5
3
4
5
6
7
---
1
2
---
3
4
5
---
1
2
3
4
5
6
7Si las entradas son 10,20,30 y 30,40,50, la salida debería ser:
10
20
30
30
40
50
---
10
20
---
30
---
10
20
30
40
50Si las entradas son 5,10,15 y 1,2,3, la salida debería ser:
5
10
15
1
2
3
---
5
10
15
---
---
5
10
15
1
2
3Hoja de referencia
Ruby proporciona operadores especiales para combinar, comparar y manipular arreglos:
El operador + concatena dos arreglos:
a = [1, 2, 3]
b = [4, 5, 6]
combined = a + b # [1, 2, 3, 4, 5, 6]El operador - elimina los elementos del primer arreglo que aparecen en el segundo:
all_numbers = [1, 2, 3, 4, 5]
to_remove = [2, 4]
result = all_numbers - to_remove # [1, 3, 5]El operador & devuelve la intersección (elementos comunes):
a = [1, 2, 3, 4]
b = [3, 4, 5, 6]
common = a & b # [3, 4]El operador | devuelve la unión (combinados sin duplicados):
a = [1, 2, 3]
b = [3, 4, 5]
union = a | b # [1, 2, 3, 4, 5]Todos estos operadores crean nuevos arreglos y dejan los arreglos originales sin cambios.
Pruébalo tú mismo
# Leer los arreglos de entrada
input1 = gets.chomp.split(',').map(&:to_i)
input2 = gets.chomp.split(',').map(&:to_i)
# TODO: Escribe tu código a continuación
# Realiza las siguientes operaciones:
# 1. Concatenación usando +
# 2. Diferencia usando -
# 3. Intersección usando &
# 4. Unión usando |
# Imprime cada resultado con "---" como separador entre operacionesEsta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores Parte 2
Operadores lógicos Parte 1Operadores lógicos Parte 2Repaso - Lógica simpleOperadores lógicos Parte 3Operadores lógicos Parte 47Calculadora para dividir la cuenta
Mensaje de bienvenidaObtener la entrada del usuario10FizzBuzz con un giro
Descripción general del juegoEl método FizzBuzz13Arrays Avanzados
Slicing de Arrays con RangosSlicing de Arrays con ÍndicesOperadores de ArraysMétodo Include?2Variables y tipos de datos
Números y variablesTipo de dato StringTipo de dato BooleanTipo de dato SymbolComprobación de tipos de datosConvenciones de nomenclaturaResumen: Creación de variables5Toma de decisiones
Sentencia IfIf - ElseRepaso - Calculadora simpleIf - Else anidadosSentencia Unless8Bucles
Bucle For con rangosBucle WhileBreakNextRepaso - FactorialBucle TimesBucle UntilBucles anidadosRepaso - Entrada dinámica3Operadores Parte 1
Operadores aritméticosOperador móduloAtajos aritméticosResumen - Matemáticas simplesOperadores de comparación6Entrada y Salida Básica
Salida con putsSalida con print y pSalida con variablesEntrada con getsMétodo chompConversión de tiposResumen - Calculadora de edadResumen - Verdadero o falso