Facultad de Ingeniería
RETO CALIFICADO
ASIGNATURA: Programación 1 RETO: RDA1 – CRITERIO 2 – RETO 2
INTEGRANTES DEL GRUPO: ARIEL VILLACRES-HANTONNY TITUAÑA
TEMAS DEL RETO:
• Condicionantes y condicionantes anidados.
• Bucles y bucles anidados
OBJETIVOS DEL RETO: Comprender la importancia de trabajar con condicionantes anidados y
bucles mediante la realización de retos.
MARCO TEÓRICO:
• Condicionante: Los condicionantes son la estructura selectiva dentro del flujo de control
de un programa. Permiten que ciertas sentencias se ejecuten o no de acuerdo con las
necesidades propias del problema que se desea resolver mediante un programa.
• Anidamiento: Significa colocar una estructura dentro de otra. En este caso representa
colocar un condicionante dentro de otro condicionante.
• Bucle: Es una secuencia de instrucciones que se ejecuta repetidamente hasta que se
cumple una condición específica. Hay varios tipos de bucles, como for o while.
• Anidamiento: Significa colocar una estructura dentro de otra. En este caso representa
colocar un bucle dentro de otro.
RECURSOS, MATERIAL Y EQUIPO: Computador con Python instalado, un editor de código como
Notepad++ o Visual Studio Code, y el símbolo de sistema o terminal para desarrolladores.
ENUNCIADO, INSTRUCCIONES, ACTIVIDADES POR DESARROLLAR Y/O REGISTRO DE
DATOS: Todos los programas que se realicen deben venir con su código fuente comentado.
• EJERCICIOS:
a. Se necesita un programa que solicite al usuario ingresar 3 números enteros y que
presente por consola los 3 valores ingresados en forma ascendente.
Ejemplo del funcionamiento del programa:
Ingrese el primer número… 6
Ingrese el segundo número… 1
Ingrese el tercer número… 4
Números ordenados de forma ascendente: 1, 4, 6
b. Elaborar un programa que determine la utilidad de una empresa mediana. Esta utilidad
se va a basar en los gastos de cada trimestre. Si en los 4 trimestres, cada gasto, este
es menor a 5000, es muy buena; si en tres trimestres de cualquiera de los 4 gastó
menos de 5000, es buena; si en dos trimestres de los 4 gastó menos de 5000 es regular,
si gastó menos de 5000 en uno o ningún trimestre, la utilidad es mala.
Facultad de Ingeniería
Ejemplo:
Ingrese los gastos del primer trimestre… 4980
Ingrese los gastos del segundo trimestre…5100
Ingrese los gastos del tercer trimestre…3000
Ingrese los gastos del cuarto trimestre… 5300
La utilidad de la empresa es regular.
c. Estás desarrollando un sistema para una biblioteca. La biblioteca cobra multas en
centavos por libros devueltos tarde de la siguiente manera:
Si el libro se devuelve el día esperado o antes, no hay multa.
Si el libro se devuelve después del día esperado, pero en el mismo mes y año, la multa
es de 15 centavos por cada día de retraso.
Si el libro se devuelve después del mes esperado, pero en el mismo año, la multa es de
500 centavos por cada mes de retraso.
Si el libro se devuelve después del año esperado, la multa es fija y es de 10000
centavos.
Tu tarea es escribir un programa en Python que tome como entrada la fecha esperada
de devolución del libro y la fecha en que se devolvió el libro, y calcule la multa que se
debe pagar. Ambas fechas se ingresando el año, el mes y el día de manera separada.
Por ejemplo, si la fecha esperada de devolución es el 1 de julio de 2024 y el libro se
devuelve el 2 de julio de 2024, la multa sería de 15 centavos. Si el libro se devuelve el
2 de agosto de 2024, la multa sería de 500 centavos. Si el libro se devuelve el 2 de julio
de 2025, la multa sería de 10000 centavos.
Ejemplo del funcionamiento del programa:
Ingrese el año esperado de devolución del libro… 2023
Ingrese el mes esperado de devolución del libro… 7
Ingrese el día esperado de devolución del libro… 1
Ingrese el año en que se devolvió el libro… 2023
Ingrese el mes en que se devolvió el libro… 8
Ingrese el día en que se devolvió el libro… 2
La multa es de 500 centavos.
d. Realice un programa que le pregunte al usuario cuántos términos desea visualizar, Los
términos se presentarán como fracciones en donde el numerador del siguiente número
será una unidad más que el anterior, lo mismo con el denominador. Se deberá imprimir
por consola el resultado de la suma de dichos términos. Se deberá preguntar al usuario
si desea repetir el proceso. Si se ingresan valores menores a cero o mayores a 10000,
el programa debe indicar que no puede generar la serie.
Ejemplo:
¿Cuántos términos?... 5
Serie generada: 1/2 + 2/3 + 3/4 + 4/5 + 5/6 = 3.55
¿Desea generar otra serie (s/n)?... s
¿Cuántos términos?... 2
1/2 + 2/3 = 1,16
Facultad de Ingeniería
¿Desea generar otra serie (s/n)?... s
¿Cuántos términos?... -2
No se puede generar la serie
¿Desea generar otra serie (s/n)?... n
Fin del programa
CUESTIONARIO (responder las siguientes preguntas):
1. ¿Para qué sirve utilizar condicionantes anidados?
Los condicionantes anidados son útiles en la programación para manejar múltiples
condiciones y derivar diferentes resultados basados en esas condiciones. Permiten una
mayor flexibilidad y control en el flujo de decisiones (Soseduca)
2. ¿Cuál es la diferencia entre estructura iterativa y estructura selectiva?
Estructuras Iterativas (Repetitivas): Permiten la ejecución de un bloque de código varias
veces hasta que se cumpla una condición determinada. Son útiles para acciones
repetitivas como procesar elementos de una lista. Ejemplos: bucles for, while, do-while.
Estructuras Selectivas (Decisión): Facilitan la toma de decisiones en un programa. Según
si una condición es verdadera o falsa, se ejecutan diferentes códigos. Son útiles para
realizar acciones bajo ciertas condiciones. Ejemplos: declaraciones if, else if, else, switch.
(Slideshare, 2023)
3. ¿Cuál es el límite de anidamientos que se pueden hacer con condicionantes?
El límite de anidamientos en estructuras condicionales depende del lenguaje de
programación que estés utilizando y de la complejidad del algoritmo. En general, no hay
un límite estricto impuesto por los lenguajes de programación modernos, pero es
importante mantener el código legible y manejable. Anidar demasiadas condiciones puede
hacer que el código sea difícil de leer y mantener. Es recomendable refactorizar el código
o utilizar otras estructuras de control, como funciones o switch, para manejar casos
complejos (Desarrollow, 2022)
4. ¿Qué es un bucle infinito, cuándo se produce tal situación?
Un bucle infinito es una secuencia de instrucciones en programación que se repite
indefinidamente debido a que la condición para terminar el bucle nunca se cumple. Esto
puede ocurrir por errores como una condición de salida incorrecta o ausente, o por un
error en el código que impide que la condición de salida se alcance. (KeepCoding, 2024)
5. Para qué sirven break y continue en los bucles, use un ejemplo por cada uno para ilustrar
su explicación.
En los bucles, break y continue son declaraciones de control de flujo que cambian el
comportamiento normal de los ciclos for y while.
• Break se utiliza para salir completamente del bucle en el que se encuentra.
• Continue se utiliza para saltar el resto del código dentro del bucle para la iteración
actual y continuar con la siguiente iteración.
Facultad de Ingeniería
6. ¿Si se coloca un bucle dentro de otro (anidado), cuál se iterará mayor cantidad de veces,
por qué?
En una estructura de bucles anidados, el bucle interno se iterará más veces que el bucle
externo. Esto se debe a que, por cada iteración del bucle externo, el bucle interno se
ejecuta completamente desde el principio hasta el final.
7. ¿Cuándo es recomendable usar el bucle while y cuando el bucle for?
La elección entre un bucle while y un bucle for depende de la situación y de lo que
necesitas lograr en tu código.
• Bucle while: Es recomendable usar un bucle while cuando no sabes de antemano
cuántas veces necesitas iterar.
• Bucle for: Es recomendable usar un bucle for cuando conoces el número exacto
de iteraciones o cuando quieres iterar sobre una secuencia de elementos, como
una lista o un rango de números. Los bucles for son ideales para situaciones
donde puedes definir la colección de elementos a iterar de antemano.
Enlace Google Colab:
ARIEL VILLACRES: [Link]
K07JG8E5m9_vYt?usp=sharing
HANTONNY TITUAÑA:
[Link]
haring
Facultad de Ingeniería
BIBLIOGRAFÍA:
Desarrollow. (28 de Noviembre de 2022). Obtenido de
[Link]
KeepCoding. (15 de Marzo de 2024). Obtenido de
[Link]
Slideshare. (09 de Diciembre de 2023). Obtenido de
[Link]
repetitivadocx/264493101
Soseduca. (s.f.). Obtenido de
[Link]
%[Link]