Repaso: práctica con rangos
Parte de la sección Lógica y flujo del Journey de Ruby de Coddy. Lección 9 de 56.
Un desafío que combina rangos inclusivos, métodos de rango y el patrón case + rango.
Desafío
FácilLee dos números enteros (dos líneas de entrada): start y end_value. Para cada número en el rango inclusivo start..end_value, imprime una línea con el formato:
<n>: <label>Donde label se determina mediante un case sobre el propio número:
1..3→small4..6→medium7..10→large- cualquier otra cosa →
out of scale
Luego, en una línea final, imprime el recuento de valores que se encuentran en 1..10 utilizando include?.
Para la entrada 2 y luego 5, la salida es:
2: small
3: small
4: medium
5: medium
In scale: 4Pruébalo tú mismo
start = gets.to_i
end_value = gets.to_i
# TODO: iterar el rango, imprimir etiquetas e informar cuántos estaban en 1..10
Todas las lecciones de Lógica y flujo
1Cadenas en profundidad
Descripción general de los métodos de cadenasInterpolación de cadenasIteración sobre cadenasSeparar y unirRepaso: Tejedor de cadenas4Bloques, Procs y Lambdas
¿Qué es un bloque?do..end frente a llavesLa palabra clave yieldParámetros de bloqueProcs y LambdasRepaso: iterador personalizado7Hashes Parte 2
Hash.new con valores predeterminadosIteración de hashesHashes anidadosCombinación y transformaciónRepaso: contador de frecuencias10Proyecto - Registros de estudiantes
Descripción general del proyectoAgregar estudiante5Potencia Enumerable
Select y RejectEncadenamiento de MapReduce / Injectcount, all?, any?, none?group_by y partitionsort_by, min_by, max_byRepaso: canalización de datosPractica por tu cuenta: Compilador de Ruby online