Introducción a la Programación.: ¿Cómo analizar un problema de programación? Ejemplo 1

sábado, 5 de febrero de 2022

¿Cómo analizar un problema de programación? Ejemplo 1

Ejemplo 1: Un niño de preescolar desea saber cuántos días exactos faltan para que sea su cumpleaños.

Respuesta:

¿Cuál es el problema? 

  • Calcular cantidad de días que existen entre dos fechas.

Datos a utilizar:

  • Datos aportados en el planteamiento del problema: 

Ninguno

  • Datos que aportará el usuario: 

Fecha de Nacimiento (Día1, Mes1, Año1) y Fecha Actual (Día2, Mes2, Año2)

Operaciones que deben realizarse sobre los datos:

  • Calcular la diferencia de años.
  • Calcular la diferencia de meses
  • Calcular la diferencia de días.

Todo esto, atendiendo a la cantidad de días de cada mes.

Salidas:

  • Total de días calculados a partir de las diferencias descritas anteriormente.

 

“Recuerden que el análisis consiste en la comprensión del problema, identificando cuáles datos se deben utilizar y también cuáles operaciones deben aplicarse”

 

Un análisis más detallado  explotaría a mayor profundidad las operaciones, veamos de nuevo la respuesta, aumentando el nivel de detalle de las operaciones:

Respuesta:

¿Cuál es el problema?

  • Calcular cantidad de días que existen entre dos fechas.

Datos a utilizar:

  • Datos aportados en el planteamiento del problema: 

Ninguno

  • Datos que aportará el usuario: 

Fecha de Nacimiento y Fecha Actual

Operaciones que deben realizarse sobre los datos:

  • Calcular la diferencia de año. Diferencia1 = (Año2 – Año1) * 365
  • Calcular la diferencia de meses. Diferencia2 = Mes2 – Mes1

o bien:

  • Diferencia2 = Mes1 – Mes2, según corresponda, multiplicado por la cantidad de días que existen entre esa diferencia de meses.
  • Diferencia3= Dia2 – Dia1

o bien:

  • Diferencia3 = Cantidad de Días del Mes2 - Dia2 + Dia1

"El detalle de estas operaciones reflejan un mayor acercamiento a lo que se resolverá en el algoritmo" 

Salidas

  • Total de días calculados de las diferencias anteriormente descritas.

 

Si comparamos estas dos respuestas al análisis, nos daremos cuenta que en el segundo, las operaciones se concretan un poco más que en el primero, por ende, esto nos facilitará la elaboración del algoritmo.