Menu
CoddyTech

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.

El método sort ordena los elementos en orden ascendente:

numbers = [3, 1, 4, 1, 5]
puts numbers.sort  # Salida: 1, 1, 3, 4, 5

Para invertir el orden de los elementos, usa el método reverse:

letters = ["a", "b", "c"]
puts letters.reverse  # Salida: c, b, a

Puedes combinar estos métodos para ordenar en orden descendente:

scores = [85, 92, 78, 95]
puts scores.sort.reverse  # Muestra: 95, 92, 85, 78

Los métodos min y max encuentran rápidamente los valores más pequeño y más grande:

prices = [29, 15, 42, 8]
puts prices.min  # Imprime: 8
puts prices.max  # Imprime: 42

Para calcular el total de los elementos numéricos, usa sum:

quantities = [2, 5, 3]
puts quantities.sum  # Imprime: 10

Ten en cuenta que sort y reverse devuelven nuevas matrices sin cambiar la original. Para modificar directamente la matriz original, añade ! al nombre del método, como sort! o reverse!.

challenge icon

Desafío

Fácil

Lee 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 números enteros y luego imprime lo siguiente en líneas separadas:

  1. El arreglo ordenado de forma ascendente (cada elemento en su propia línea)
  2. El arreglo ordenado de forma descendente (cada elemento en su propia línea)
  3. El valor mínimo
  4. El valor máximo
  5. La suma de todos los elementos

Imprime una línea en blanco entre cada sección para que sea más claro.

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
28

Si la entrada es 10,30,20, la salida debería ser:

10
20
30

30
20
10

10
30
60

Si la entrada es 7,3,5,1, la salida debería ser:

1
3
5
7

7
5
3
1

1
7
16

Pruébalo tú mismo

# Lee los números enteros separados por comas
input = gets.chomp

# Divide la entrada en cada coma y convierte cada parte en un número entero
numbers = input.split(",").map(&:to_i)

# TODO: Escribe tu código a continuación
# 1. Ordena el arreglo de menor a mayor e imprime cada elemento
# 2. Imprime una línea en blanco
# 3. Ordena el arreglo de mayor a menor e imprime cada elemento
# 4. Imprime una línea en blanco
# 5. Imprime el valor mínimo
# 6. Imprime el valor máximo
# 7. Imprime la suma de todos los elementos
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de Ruby online