Métodos de arrays
Parte de la sección Fundamentos del Journey de Ruby de Coddy — lección 61 de 88.
Ruby proporciona varios métodos integrados que facilitan el trabajo con arrays. Estos métodos te ayudan a ordenar, invertir y encontrar elementos sin tener que escribir código complejo tú mismo.
El método sort ordena los elementos en orden ascendente:
numbers = [3, 1, 4, 1, 5]
puts numbers.sort # Salida: 1, 1, 3, 4, 5Para invertir el orden de los elementos, utiliza el método reverse:
letters = ["a", "b", "c"]
puts letters.reverse # Salida: c, b, aPuedes combinar estos métodos para ordenar en orden descendente:
scores = [85, 92, 78, 95]
puts scores.sort.reverse # Salida: 95, 92, 85, 78Los métodos min y max encuentran rápidamente los valores más pequeños y más grandes:
prices = [29, 15, 42, 8]
puts prices.min # Salida: 8
puts prices.max # Salida: 42Para calcular el total de elementos numéricos, utiliza sum:
quantities = [2, 5, 3]
puts quantities.sum # Salida: 10Ten en cuenta que sort y reverse devuelven nuevos arrays sin cambiar el original. Para modificar el array original directamente, añade ! al nombre del método, como sort! o reverse!.
Desafío
FácilLee una sola línea de entrada que contenga números enteros separados por comas (por ejemplo, 5,2,8,1,9,3).
Divide la entrada en un arreglo de enteros y luego imprime lo siguiente en líneas separadas:
- El arreglo ordenado en orden ascendente (cada elemento en su propia línea)
- El arreglo ordenado en orden descendente (cada elemento en su propia línea)
- El valor mínimo
- El valor máximo
- La suma de todos los elementos
Imprime una línea en blanco entre cada sección para mayor claridad.
Por ejemplo, si la entrada es 5,2,8,1,9,3, la salida debería ser:
1
2
3
5
8
9
9
8
5
3
2
1
1
9
28Si la entrada es 10,30,20, la salida debería ser:
10
20
30
30
20
10
10
30
60Si la entrada es 7,3,5,1, la salida debería ser:
1
3
5
7
7
5
3
1
1
7
16Hoja de referencia
Ruby proporciona métodos integrados para trabajar con arreglos:
El método sort organiza los elementos en orden ascendente:
numbers = [3, 1, 4, 1, 5]
puts numbers.sort # Produce: 1, 1, 3, 4, 5El método reverse invierte el orden de los elementos:
letters = ["a", "b", "c"]
puts letters.reverse # Produce: c, b, aCombina métodos para ordenar en orden descendente:
scores = [85, 92, 78, 95]
puts scores.sort.reverse # Produce: 95, 92, 85, 78Los métodos min y max encuentran los valores más pequeño y más grande:
prices = [29, 15, 42, 8]
puts prices.min # Produce: 8
puts prices.max # Produce: 42El método sum calcula el total de los elementos numéricos:
quantities = [2, 5, 3]
puts quantities.sum # Produce: 10Nota: sort y reverse devuelven arreglos nuevos sin cambiar el original. Para modificar el arreglo original, utiliza sort! o reverse!.
Pruébalo tú mismo
# Leer los enteros separados por comas
input = gets.chomp
# TODO: Escribe tu código a continuación
# 1. Divide la entrada en un arreglo de enteros
# 2. Ordena el arreglo en orden ascendente e imprime cada elemento
# 3. Imprime una línea en blanco
# 4. Ordena el arreglo en orden descendente e imprime cada elemento
# 5. Imprime una línea en blanco
# 6. Imprime el valor mínimo
# 7. Imprime el valor máximo
# 8. Imprime la suma de todos los elementosEsta 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 FizzBuzz2Variables 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