0% encontró este documento útil (0 votos)
27 vistas4 páginas

Cálculo de Precios con Descuentos

El documento presenta un código en Python que calcula el precio de boletos para visitantes según su edad y tipo, aplicando descuentos específicos. Incluye funciones para obtener la entrada del usuario y manejar errores, permitiendo calcular el total a pagar por un grupo de visitantes. Además, se explica la lógica detrás de las funciones y el control de flujo utilizado en el programa.

Cargado por

cpcesr
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
27 vistas4 páginas

Cálculo de Precios con Descuentos

El documento presenta un código en Python que calcula el precio de boletos para visitantes según su edad y tipo, aplicando descuentos específicos. Incluye funciones para obtener la entrada del usuario y manejar errores, permitiendo calcular el total a pagar por un grupo de visitantes. Además, se explica la lógica detrás de las funciones y el control de flujo utilizado en el programa.

Cargado por

cpcesr
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 4

Nombre: Cesar Alfonso Sánchez del Toro Matrícula: 02957967

Nombre del curso: Nombre del profesor:


Fundamentos de la programación

Módulo: 1 Actividad: 2

Fecha: 27/08/2024

Bibliografía:

Codigo:
def calcular_precio(tipo_visitante, es_mayor_edad):
# Precio base
if es_mayor_edad:
precio_base = 45
else:
precio_base = 30

# Descuentos por tipo de visitante


descuentos = {
"adulto mayor": 0.12,
"profesor": 0.10,
"estudiante": 0.10
}

# Obtener descuento aplicable


descuento = descuentos.get(tipo_visitante.lower(), 0)

# Calcular precio final con descuento


precio_final = precio_base * (1 - descuento)

return precio_final
def main():
total_a_pagar = 0

while True:
try:
num_visitantes = int(input("Ingrese el número de visitantes que
pagarán boleto: "))
if num_visitantes <= 0:
print("El número de visitantes debe ser mayor que 0.")
continue
except ValueError:
print("Entrada inválida. Ingrese un número entero.")
continue

for i in range(num_visitantes):
while True:
try:
es_mayor_edad = input("¿El visitante es mayor de edad? (s/n):
").strip().lower()
if es_mayor_edad not in ['s', 'n']:
raise ValueError("Entrada inválida. Responda con 's' o 'n'.")
es_mayor_edad = es_mayor_edad == 's'
break
except ValueError as e:
print(e)
continue

while True:
try:
tipo_visitante = input("Ingrese el tipo de visitante (adulto mayor,
profesor, estudiante): ").strip().lower()
if tipo_visitante not in ["adulto mayor", "profesor", "estudiante"]:
raise ValueError("Tipo de visitante inválido.")
break
except ValueError as e:
print(e)
continue

precio = calcular_precio(tipo_visitante, es_mayor_edad)


total_a_pagar += precio

print(f"Precio para este visitante: ${precio:.2f}")

print(f"\nTotal a pagar por todos los visitantes: ${total_a_pagar:.2f}")

while True:
continuar = input("¿Desea calcular el total para otro grupo de
visitantes? (s/n): ").strip().lower()
if continuar in ['s', 'n']:
break
else:
print("Entrada inválida. Responda con 's' o 'n'.")

if continuar == 'n':
break

if __name__ == "__main__":
main()
Explicacion:
Función calcular_precio(tipo_visitante, es_mayor_edad):
Determina el precio base según si el visitante es mayor de edad.
Aplica el descuento correspondiente según el tipo de visitante.
Calcula y retorna el precio final después del descuento.
Función main():
Solicita al usuario el número de visitantes y verifica que sea un número válido.
Usa un ciclo for para iterar sobre el número de visitantes, pidiendo si son
mayores de edad y el tipo de visitante para cada uno.
Calcula el precio para cada visitante y acumula el total a pagar.
Permite al usuario calcular el total para otro grupo de visitantes o salir del
programa.
Ciclos y control de flujo:
Se usan ciclos while para gestionar la entrada del usuario y manejar errores.
Las cláusulas break y continue se utilizan para controlar la lógica del ciclo y
validar entradas.

Resultado:

También podría gustarte