Está en la página 1de 1

ejemplo2

# Ejercicio 2, correspondiente a la clase de Funciones


# Escribir un programa modular, que solicite el ingreso de un mes y un año,
# e informe la cantidad de día que tiene el mes, teniendo en cuenta los años
# bisiestos.

def solicitarValor(mensaje,min,max):
""" Solicita el ingreso de un valor numerico. Asegurando que
que el mismo se encuentre entre los límites pasados como
parámetros"""
valor = input(mensaje)
while not(valor.isdigit()) or int(valor)<min or int(valor)>max:
print("Error! Debe ingresar un valor entre {0} y {1}".format(min,max))
valor = input(mensaje)
return int(valor)

def cantidadDiasMes(mes,anio):
""" Devuelve la cantidad de días del mes, en función del mes
y el año recibido por parámetros, teniendo en cuenta los
años bisiestos"""
if mes in (1,3,5,7,8,10,12):
return 31
elif mes in (4,6,9,11):
return 30
elif mes == 2:
if (anio % 400 == 0) or ((anio % 4 == 0) and (anio % 100 != 0)):
return 29
else:
return 28

#----------------- Bloque Principal -----------------------------------#

mes_ingresado = solicitarValor("Mes: ",1,12)


anio_ingresado = solicitarValor("Año: ",0,2500)
print("Cantidad de Días: ",cantidadDiasMes(mes_ingresado,anio_ingresado))

Página 1

También podría gustarte