Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

06 Calculando el tiempo total del proyecto; Yo use while

06 Calculando el tiempo total del proyecto
Camila está organizando un proyecto y necesita calcular el tiempo total necesario para concluir tres actividades: A, B y C. Sin embargo, si alguna actividad tiene un número de días negativo, el código debe avisar que los valores ingresados son inválidos y no calcular el total.
Escribe un programa que reciba el número de días de tres actividades y muestre el tiempo total del proyecto. Si algún valor es negativo, muestra un mensaje informando el error.
Yo Use While, para que vuelva a preguntar hasta que ingresen un numero positivo.

while True: # Inicia un bucle infinito
dias_activA = int(input("Digite la cantidad de días para concluir la primera actividad A: "))
if dias_activA < 0:
print("Error: Los días no pueden ser negativos")
else:
break # Sale del bucle si la entrada es un número no negativo

while True: # Bucle para actividad B
dias_activB = int(input("Digite la cantidad de días para concluir la segunda actividad B: "))
if dias_activB < 0:
print("Error: Los días no pueden ser negativos")
else:
break # Sale del bucle si la entrada es un número no negativo

while True: # Bucle para actividad C
dias_activC = int(input("Digite la cantidad de días para concluir la tercera actividad C: "))
if dias_activC < 0:
print("Error: Los días no pueden ser negativos")
else:
break # Sale del bucle si la entrada es un número no negativo

totalProyecto = int(dias_activA + dias_activB + dias_activC)
print(f"El tiempo total del proyecto es: {totalProyecto}")

1 respuesta

¡Hola Estudiante, espero que estés bien!

Veo que has implementado un enfoque interesante usando bucles while para asegurarte de que los valores ingresados sean no negativos. Sin embargo, para cumplir con el requisito de no calcular el total si hay un número negativo, podrías considerar una pequeña modificación.

En lugar de calcular el total dentro de los bucles while, puedes verificar todos los valores después de la entrada y solo calcular el total si todos son válidos. Aquí te dejo una sugerencia de cómo podrías hacerlo:

# Inicializamos las variables
dias_activA = dias_activB = dias_activC = 0

# Bucle para actividad A
while True:
    dias_activA = int(input("Digite la cantidad de días para concluir la primera actividad A: "))
    if dias_activA < 0:
        print("Error: Los días no pueden ser negativos")
    else:
        break

# Bucle para actividad B
while True:
    dias_activB = int(input("Digite la cantidad de días para concluir la segunda actividad B: "))
    if dias_activB < 0:
        print("Error: Los días no pueden ser negativos")
    else:
        break

# Bucle para actividad C
while True:
    dias_activC = int(input("Digite la cantidad de días para concluir la tercera actividad C: "))
    if dias_activC < 0:
        print("Error: Los días no pueden ser negativos")
    else:
        break

# Verificamos si todos los valores son válidos
if dias_activA >= 0 and dias_activB >= 0 and dias_activC >= 0:
    totalProyecto = dias_activA + dias_activB + dias_activC
    print(f"El tiempo total del proyecto es: {totalProyecto}")
else:
    print("Error: No se puede calcular el total debido a valores negativos.")

Con este enfoque, te aseguras de que solo se calcule el total si todos los días ingresados son no negativos, cumpliendo así con el requisito del ejercicio. Espero que esta sugerencia te sea útil. ¡Espero haber ayudado y buenos estudios!