lOMoARcPSD|47322566
Fundamentos de programación estructurada y estructuras cíclicas
Aprendiz: Erika Natali Cely Lópe
Ficha: 3070289
Análisis y desarrollo de software
Tecnólogo de análisis y desarrollo de software
Sena
Centro se tecnologías del transporte
Bogotá
2025
1
lOMoARcPSD|47322566
INTRODUCCION
El desarrollo de algoritmos para este cálculo no solo tiene aplicaciones en la programación de
calendarios y sistemas de fechas, sino también en áreas como la astronomía, la planificación
de eventos a largo plazo y la investigación histórica. La capacidad de determinar con precisión
si un año es bisiesto permite realizar cálculos temporales exactos y evitar errores en la gestión
del tiempo
Este trabajo presenta un algoritmo diseñado para calcular la edad de una persona a partir de
su fecha de nacimiento. El algoritmo considera las variaciones en la duración de los meses y
los años bisiestos para proporcionar un cálculo preciso de la edad en años, meses y días.
Taller
Algoritmo que a partir de una fecha de nacimiento y una fecha actual determine
la edad en años actual de una persona.
Entrada:
Fecha de nacimiento (día, mes, año).
Fecha actual (día, mes, año).
Cálculo:
Calcular la diferencia de años entre la fecha actual y la fecha de nacimiento.
Si el mes de la fecha actual es menor que el mes de la fecha de nacimiento, o si el
mes es el mismo pero el día de la fecha actual es menor que el día de la fecha de
nacimiento, restar 1 a la diferencia de años.
Salida:
2
lOMoARcPSD|47322566
La edad en años.
3
lOMoARcPSD|47322566
4
lOMoARcPSD|47322566
Consideraciones adicionales:
Este algoritmo asume que las fechas de entrada son válidas.
Si requieres una mayor precisión, puedes considerar calcular la edad en meses y días,
pero para la mayoria de los casos, la edad en años es suficiente.
En el segundo ejemplo, se muestra como usar la librería datetime de python, que puede
llegar a ser mas eficiente.
Análisis:
• Formular el problema: consiste desde la fecha de nacimiento y fecha actual en edad en
años actuales
• Resultados esperados: se espera que el algoritmo funcione sin ningún error al ser
ejecutado
• Datos disponibles: son como fecha de nacimiento como día, mes y año y con la fecha
actual igualmente como mes día y año Restricciones: ninguna
• Procesos necesarios: solicitar que el usuario indique los respectivos datos como día, mes
y año
Explicación del diagrama de flujo:
1. Inicio: El proceso comienza.
2. Obtener fecha de nacimiento: Se ingresa la fecha de nacimiento de la persona (día,
mes, año).
3. Obtener fecha actual: Se ingresa la fecha actual (día, mes, año).
4. Calcular diferencia de años: Se calcula la diferencia entre el año actual y el año de
nacimiento, y se almacena en la variable "edad".
5. Verificar si el cumpleaños ya pasó: Se verifica si el mes actual es menor que el mes
de nacimiento, o si el mes es el mismo pero el día actual es menor que el día de
nacimiento.
o Sí: Significa que el cumpleaños de la persona aún no ha pasado este año, por lo
que se resta 1 a la edad.
5
lOMoARcPSD|47322566
o No: Significa que el cumpleaños de la persona ya pasó o está por pasar, por lo
que la edad calculada es correcta.
6. Mostrar edad: Se muestra la edad calculada.
7. Fin: El proceso termina.
Este diagrama de flujo representa visualmente los pasos del algoritmo y facilita su
comprensión
6
lOMoARcPSD|47322566
2.Algoritmo que permita determinar si un año indicado es o no un año bisiesto.
Análisis:
• Formular el problema: consiste diferenciar que año es Bisiesto y que año no es
bisiesto
• Resultados esperados: se espera que el algoritmo funcione sin ningún error al ser
ejecutado y sin ningún problema
• Datos disponibles: año actual, años pasados o futuros
7
lOMoARcPSD|47322566
• Restricciones: ninguna
• Procesos necesarios: solicitar que el usuario indique los respectivos datos como
año sea vigente, pasado o futuro para obtener la información clara.
Algoritmo es Bisiesto
1. Inicio
2. Leer año
3. Si (año es divisible por 4) entonces
o Si (año es divisible por 100) entonces
Si (año es divisible por 400) entonces
Mostrar "El año es bisiesto"
Sino
Mostrar "El año no es bisiesto"
FinSi
o Sino
Mostrar "El año es bisiesto"
o FinSi
4. Sino
o Mostrar "El año no es bisiesto"
5. FinSi
6. Fin
Explicación:
Un año es bisiesto si es divisible por 4.
Sin embargo, si un año es divisible por 100, no es bisiesto, a menos que también sea
divisible por 400.
8
lOMoARcPSD|47322566
Este algoritmo te permitirá determinar de manera precisa si un año dado
es bisiesto o no, siguiendo las reglas del calendario gregoriano
Diagrama de flujo
Explicación de los símbolos:
Óvalo (Inicio/Fin): Representa el inicio o el final del algoritmo.
9
lOMoARcPSD|47322566
Rectángulo (Proceso): Representa una operación o instrucción.
Rombo (Decisión): Representa una decisión o condición que debe evaluarse.
Flechas: Indican el flujo del algoritmo.
Descripción del diagrama de flujo:
1. Inicio: El algoritmo comienza.
2. ¿Año divisible por 4?: Se verifica si el año es divisible por 4.
o Si es divisible por 4, se pasa a la siguiente decisión.
o Si no es divisible por 4, se muestra "No es bisiesto" y el algoritmo finaliza.
3. ¿Año divisible por 100?: Se verifica si el año es divisible por 100.
o Si es divisible por 100, se pasa a la siguiente decisión.
o Si no es divisible por 100, se muestra "Es bisiesto" y el algoritmo finaliza.
4. ¿Año divisible por 400?: Se verifica si el año es divisible por 400.
o Si es divisible por 400, se muestra "Es bisiesto" y el algoritmo finaliza.
o Si no es divisible por 400, se muestra "No es bisiesto" y el algoritmo finaliza.
5. Fin: El algoritmo termina.
10
lOMoARcPSD|47322566
11
lOMoARcPSD|47322566
Bibliografía
https://zajuna.sena.edu.co/zajuna/mod/assign/view.php?
id=2279264&action=editsubmission
12