Ciclo 1
Fundamentos de programación
en Python
Sesión 15: Sesión Preparación Reto 3
Programa Ciencias de la Computación e Inteligencia
Artificial
Escuela de Ciencias Exactas e Ingeniería
Universidad Sergio Arboleda
Bogotá
Agenda
1. Enunciado del reto
2. Ingreso de datos para el reto
3. Comparación de parámetros
4.Pasos a considerar en la solución del reto
5. Ejercicios
1. Enunciado del reto
Una de las fortalezas deportivas que tiene Colombia y que más glorias le ha dado al país es el
ciclismo. En Colombia las dificultades de la topografía han forjado a nuestros escarabajos que
entrenaban en arcaicas bicicletas. La competencia internacional implica competir sobre bicicletas
que día a día tienen más tecnología y menos peso. En las competencias se definen por reglamento
las dimensiones de las bicicletas, las cuales se espera que unifiquen las condiciones de los ciclistas.
La Unión de Ciclismo Internacional (UCI) define un reglamento técnico en el cual se encuentran las
especificaciones de la bicicleta. Sin embargo, la mayoría de diseños suelen establecer algunos
detalles por fuera de las medidas reglamentarias. Las medidas que menos se respetan son:
1. Enunciado del reto
• El eje pedalier debe ubicarse entre 240 y 300 cm del piso.
• Las bielas deben medir máximo 180 mm y mínimo 160 mm.
• La longitud del sillín debe ser mínimo 240 mm y máximo 275mm
• El manilar debe tener máximo 50 cm de ancho.
Por tal razón, le han encomendado a usted la selección de los diseños que cumplen con las
condiciones del reglamento, así que debe construir el software que procesará los datos de las
bases de datos donde reposan los diseños en el sistema. Su misión es crear un programa en
Python que permita mostrarle a los equipos ciclisticos la lista de las bicicletas que cumplen con los
requerimientos y por supuesto el valor de las mismas para su consideración.
1. Enunciado del reto
Entrada La entrada estará conformada por N + 1 líneas:
La primera línea recibirá un número N que equivale a la cantidad de
registros en la base de datos. Cada registro representa el diseño de cada
bicicleta.
Cada una de las siguientes N líneas estará formada por 5 números
separados por espacios que representan las diferentes características de
una bicicleta. Por ejemplo, la fila 250 170 258 48 12000 representa una
bicicleta con 250 mm de distancia entre el suelo y el eje pedalier,
170mm miden sus bielas, el sillín mide 258mm y el manilar mide 48
centímetros y cuesta 12000 dólares.
Salida El programa imprimirá el precio de cada una de las bicicletas de la base
de datos que cumplen con los criterios del reglamento
Si no existe ningún registro en la base de datos que cumpla los criterios
del reglamento, el programa imprimirá “NO DISPONIBLE”
2. Ingreso de datos para el reto
La calificación del reto es automático. Se debe considerar la forma de ingresar los
datos al calificador automático. En esta oportunidad la entrada de datos varia
dependiendo de la cantidad de líneas que se quieran evaluar.
Se siguiere la siguiente forma:
El ciclo va de cero a N, donde N, es el numero ingresado por el usuario.
Los datos se guardan en la lista db.
2. Ingreso de datos para el reto
En el siguiente ejemplo se ingresan 3 líneas.
Por cada línea se ingresa un numero 0, 9 y 8
3. Comparación de parámetros
Para hacer la comparación se siguiere hacer un ciclo que recorra la lista con los
datos ingresados por el usuario y comparar con los parámetros del problema.
4. Pasos a considerar para la
solución del reto
1. Entender el problema: realizar un diagrama que describa el problema
2. Plantear la solución: realizar un diagrama con las operaciones a realizar
3. Ingresar datos: hacer pruebas ingresando datos teniendo que las entradas
varían dependiendo del numero N
4. Hacer las comparaciones necesarias para encontrar el resultado
5. Imprimir el resultado
5. Ejercicios
• Implementa un programa que muestre todos los múltiplos de 6 entre 6 y
150, ambos inclusive.
• Implementa un programa que muestre todos los múltiplos de n entre n y (m
· n), ambos inclusive, donde n y m son números introducidos por el usuario.
• Implementa un programa que muestre todos los números potencia de 2
entre 20 y 230 ambos inclusive.
• Diseña un programa que calcule 𝑚 𝑖=𝑛 𝑖, donde n y m son números enteros
que deberá introducir el usuario por teclado.
• Diseñar un programa que solicite la lectura de un número entre 0 y 10
(ambos inclusive). Si el usuario teclea un número fuera del rango válido, el
programa solicitará nuevamente la introducción del valor cuantas veces sea
menester.
Preguntas