Está en la página 1de 13

ALGORITMOS - 301303

Formato Etapa 2 - Taller fundamentos de programación -


Algoritmos
La primera actividad para dar solución a un problema mediante la
utilización de lenguajes de programación consiste en definir de una
manera clara el problema a resolver.
Una de las formas es haciéndose algunas preguntas que no le han
quedado claras después de leer el planteamiento del problema, por
ejemplo, saber cuáles son los datos que no se conocen, identificar los
datos que son posibles de calcular, determinar con claridad las variables
que se pueden utilizar e indagar sobre las fórmulas que se deben utilizar
en los problemas que así lo requieran.
Con el propósito de facilitar este proceso se ha diseñado una pequeña
plantilla, la que se debe diligenciar antes de iniciar a elabora el programa
solicitado.
Es importante que usted analice y diligencie cada uno de los puntos
solicitados en la guía.

Éxitos
Recuerde que el análisis es individual
Nombre estudiante: Jefferson Portilla Mayor
1._ Análisis inicial

Planteamiento del problema a resolver: Desarrollar un Algoritmo que permita


determinar la fecha un día después a una fecha ingresada (tenga en cuenta meses de
30, 31, 28 días, cambio de año, ejemplo 31-12-2004 el día siguiente será 1-12005).
Que datos no Que datos no Tipo Formulas a aplicar Requi Requiere
conozco y se conozco, pero Variables si se requieren ere ciclos
deben los puedo requeridas condic (si / no)
solicitar (si calcular Tipo Variabl ional _ cuales
se requiere e (si /
más filas por no)
favor
anexarlas)
La fecha Un día Real mes Si Si (Ciclo
inicial después de la Repetir,
fecha inicial Ciclo
Mientras)
Real mes2
Real año
Real año2
Real dia
Real dia2
Real parar

2.- Código: (se debe pegar el código – no imagen)


//Nombre del Autor: Jefferson Portilla Mayor
//Fecha: 10/03/2018
//Doy fe que este ejercicio es de mi autoría, en caso de encontrar plagio la
nota de mi
//trabajo debe ser de CERO, además de las respectivas sanciones a que
haya lugar.
Algoritmo fecha_ingresada
//Definir las varibles que se utilizaran en el algoritmo
Definir parar, mes, mes2, año, año2, dia, dia2 como entero

//Ciclo repetir para validar cuando se quiera terminar el programa o


reiniciarlo
Repetir

Limpiar Pantalla
Escribir "//ALGORITMO QUE PERMITE DETERMINAR LA FECHA UN"
Escribir "DÍA DESPUES A LA FECHA INGRESADA//"
Escribir ""
//Capturar los valores del mes
Escribir "POR FAVOR DIGITE UNA FECHA (MM/DD/AAAA): "
Escribir " "
Escribir "POR FAVOR DIGITE EL NÚMERO DEL MES: "
Leer mes

//Cicilo para validar que se digite el mes entre 1 y 12


Mientras mes <= 0 o mes > 12 Hacer
Escribir "POR FAVOR DIGITE UN NÚMERO DEL MES ENTRE 1 A
12: "
Leer mes
Fin Mientras
//Cicilo para validar que se digite el mes entre 1 y 12

Escribir "POR FAVOR DIGITE EL DÍA: "


Leer dia
Escribir "POR FAVOR DIGITE EL AÑO: "
Leer año

//Si para validar que dependiendo del mes digitado no se digite un


día mayor al rango del mes o año bisiesto
Si mes = 1 O mes = 3 O mes = 5 O mes = 7 O mes = 8 O mes = 10
O mes = 12 entonces
Si dia < 1 o dia > 31 entonces
Escribir "POR FAVOR DIGITE EL DÍA ENTRE 1 A 31: "
Leer dia
FinSi
Sino
Si mes = 4 O mes = 6 O mes = 9 O mes = 11 Entonces

si dia < 1 o dia > 30 entonces


Escribir "POR FAVOR DIGITE EL DÍA ENTRE 1 A 30:
"
Leer dia
FinSi

SiNo
Si mes = 2 Entonces

Si año mod 400 = 0 Entonces


si dia < 1 o dia > 29 entonces
Escribir "POR FAVOR DIGITE EL DÍA
ENTRE 1 A 29: "
Leer dia
FinSi
SiNo
Si año mod 4 = 0 Y año mod 100 != 0
Entonces
si dia < 1 o dia > 29 entonces
Escribir "POR FAVOR DIGITE EL
DÍA ENTRE 1 A 29: "
Leer dia
FinSi
SiNo
si dia < 1 o dia > 28 entonces
Escribir "POR FAVOR DIGITE EL
DÍA ENTRE 1 A 28: "
Leer dia
FinSi
finsi
FinSi

FinSi

FinSi

FinSi
//Si para validar que dependiendo del mes digitado no se digite un
día mayor al rango del mes o año bisiesto

mes2 = mes //Guardo el mes digitado en la variable 2


dia2 = dia //Guardo el dia digitado en la variable 2
año2 = año //Guardo el año digitado en la variable 2
/////////////////////////////////////////////////////////////////////////////
///////////////////////////////
//Proceso para validar la fecha ingresada y calcular su día
posterior///////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
///////////////////////////////
Si año mod 400=0 Entonces

Si mes = 1 O mes = 3 O mes = 5 O mes = 7 O mes = 8 O mes


= 10 O mes = 12 entonces

Si dia >= 1 y dia <= 30 entonces


a = dia + 1
SiNo
Si mes = 12 y dia = 31 entonces
dia = 1
mes = 1
año = año + 1
SiNo
dia = 1
mes = mes + 1
FinSi
FinSi

SiNo

Si mes = 4 O mes = 6 O mes = 9 O mes = 11 entonces

Si dia >= 1 y dia < 30 entonces


dia = dia + 1
SiNo
dia = 1
mes = mes + 1
FinSi

SiNo

Si mes = 2 entonces

Si dia >= 1 y dia <= 28 entonces


dia = dia + 1
SiNo

Si dia = 29 Entonces
dia = 1
mes = mes + 1
FinSi

FinSi

FinSi

FinSi

FinSi
Escribir ""
Escribir "LA FECHA INGRESADA ES: ",
mes2,"/",dia2,"/",año2
Escribir "LA FECHA POSTERIOR ES: ", mes,"/",dia,"/",año
escribir ""
Escribir "PRESIONE ENTER PARA INGRESAR UNA FECHA
NUEVA O 1 PARA TERMINAR?"
escribir ""
Escribir "Algoritmo realizado por Jefferson Portilla M."
Leer parar

SiNo

Si año mod 4 = 0 Y año mod 100 != 0 Entonces

Si mes = 1 O mes = 3 O mes = 5 O mes = 7 O mes = 8


O mes = 10 O mes = 12 entonces

Si dia >= 1 y dia <= 30 entonces


dia = dia+1
SiNo
Si mes = 12 y dia = 31 entonces
dia = 1
mes = 1
año = año + 1
SiNo
dia = 1
mes = mes + 1
FinSi
FinSi

SiNo

Si mes = 4 O mes = 6 O mes = 9 O mes = 11


entonces

Si dia >= 1 y dia < 30 entonces


dia = dia + 1
SiNo
dia = 1
mes = mes + 1
FinSi

SiNo

Si mes = 2 entonces

Si dia >= 1 y dia <= 28 entonces


dia = dia+1
SiNo

si dia = 29 Entonces
dia = 1
mes = mes + 1
FinSi
FinSi

FinSi

FinSi

FinSi

Escribir ""
Escribir "LA FECHA INGRESADA ES: ",
mes2,"/",dia2,"/",año2
Escribir "LA FECHA POSTERIOR ES: ",
mes,"/",dia,"/",año
escribir ""
Escribir "PRESIONE ENTER PARA INGRESAR UNA
FECHA NUEVA O 1 PARA TERMINAR?"
escribir ""
Escribir "Algoritmo realizado por Jefferson Portilla
M."
Leer parar
SiNo

Si mes = 1 O mes = 3 O mes = 5 O mes = 7 O mes = 8


O mes = 10 O mes = 12 entonces

Si dia >= 1 y dia <= 30 entonces


dia = dia+1
SiNo
Si mes = 12 y dia = 31 entonces
dia = 1
mes = 1
año = año + 1
SiNo
dia = 1
mes = mes + 1
FinSi
FinSi

SiNo

Si mes = 4 O mes = 6 O mes = 9 O mes = 11


entonces

Si dia >= 1 y dia < 30 entonces


dia = dia + 1
SiNo
dia = 1
mes = mes + 1
FinSi

SiNo
Si mes = 2 entonces

Si dia >= 1 y dia < 28 entonces


dia = dia + 1
SiNo
dia = 1
mes = mes + 1
FinSi

FinSi

FinSi

FinSi
Escribir ""
Escribir "LA FECHA INGRESADA ES: ",
mes2,"/",dia2,"/",año2
Escribir "LA FECHA POSTERIOR ES: ",
mes,"/",dia,"/",año
escribir ""
Escribir "PRESIONE ENTER PARA INGRESAR UNA
FECHA NUEVA O 1 PARA TERMINAR?"
escribir ""
Escribir "Algoritmo realizado por Jefferson Portilla
M."
Leer parar
Fin Si

Fin Si
/////////////////////////////////////////////////////////////////////////////
///////////////////////////////
//Proceso para validar la fecha ingresada y calcular su día
posterior///////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
///////////////////////////////
Hasta Que parar = 1
//Ciclo repetir para validar cuando se quiera terminar el programa o
reiniciarlo

FinAlgoritmo
3.- Usted probo el resultado con diferentes valores? __Si__ (Cuales):
____5/25/2018, 2/29/2016, 12/31/2017___

4.- Resultado (captura imagen o imágenes del resultado (debe aparecer su


nombre)

También podría gustarte