0% encontró este documento útil (0 votos)
82 vistas7 páginas

Algoritmos de Edad y Año Bisiesto en Python

Cargado por

Patricia Olaya
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 PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
82 vistas7 páginas

Algoritmos de Edad y Año Bisiesto en Python

Cargado por

Patricia Olaya
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 PDF, TXT o lee en línea desde Scribd

GA3-220501093-AA2-EV01 fundamentos de programación estructurada

y estructuras cíclicas

Por
Patricia Rodriguez Olaya
Septiembre 2023

Servicio Nacional de Aprendizaje SENA


Formación Titulada Virtual
Análisis Y Desarrollo De Software (2758340)
Problema 1: Algoritmo que determine la edad actual de una persona
Análisis

Elementos de entrada:

• Fecha de nacimiento de la persona


• Fecha actual

Elementos de salida:

• Edad actual de la persona

Procesos requeridos:

• Convertir las fechas de nacimiento y actual a un formato numérico.


• Calcular la diferencia en años entre las dos fechas.
• Devolver la diferencia en años.

Diseño e implementación

Diagrama de flujo:

Inicio

Solicitar la fecha de nacimiento

Solicitar la fecha actual

Convertir la fecha de nacimiento a un formato numérico

Convertir la fecha actual a un formato numérico

Calcular la diferencia en años entre las dos fechas

Devolver la diferencia en años

Fin
Pseudocódigo:

Python
def calcular_edad(fecha_nacimiento, fecha_actual):
"""
Calcula la edad actual de una persona.

Args:
fecha_nacimiento: La fecha de nacimiento de la persona.
fecha_actual: La fecha actual.

Returns:
La edad actual de la persona.
"""
# Convertir las fechas a un formato numérico

fecha_nacimiento_numerica = datetime.strptime(fecha_nacimiento,
"%d/%m/%Y").date().toordinal()
fecha_actual_numerica = datetime.strptime(fecha_actual,
"%d/%m/%Y").date().toordinal()

# Calcular la diferencia en años

diferencia_en_años = fecha_actual_numerica - fecha_nacimiento_numerica

# Devolver la diferencia en años

return diferencia_en_años // 365

if __name__ == "__main__":
# Solicitar la fecha de nacimiento

fecha_nacimiento = input("Ingrese la fecha de nacimiento (dd/mm/aaaa): ")

# Solicitar la fecha actual

fecha_actual = input("Ingrese la fecha actual (dd/mm/aaaa): ")

# Calcular la edad

edad = calcular_edad(fecha_nacimiento, fecha_actual)

# Mostrar la edad

print(f"La edad actual es {edad} años.")


Utiliza el código con precaución. Más información
content_copy

Ejemplo de ejecución:

Ingrese la fecha de nacimiento (dd/mm/aaaa): 2000/01/01


Ingrese la fecha actual (dd/mm/aaaa): 2023/07/20
La edad actual es 23 años.
Problema 2: Algoritmo que determine si un año es o no un año
bisiesto
Análisis

Elementos de entrada:

• Un año

Elementos de salida:

• Un booleano que indica si el año es o no bisiesto

Procesos requeridos:

• Verificar si el año es divisible por 4.


• Verificar si el año es divisible por 100.
• Verificar si el año es divisible por 400.

Diseño e implementación

Diagrama de flujo:

Inicio

Solicitar el año

Verificar si el año es divisible por 4

Si el año es divisible por 4:

Verificar si el año es divisible por 100

Si el año es divisible por 100:

Verificar si el año es divisible por 400

Si el año es divisible por 400:

Devolver True
De lo contrario:

Devolver False
De lo contrario:

Devolver True
De lo contrario:

Devolver False

Fin
Pseudocódigo:

Python
def es_bisiesto(año):
"""
Determina si un año es o no bisiesto.

Args:
año: El año a verificar.

Returns:
Un booleano que indica si el año es o no bisiesto.
"""

También podría gustarte