Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Ayuda kon este programa ! Dia y Mes

Estas en el tema de Ayuda kon este programa ! Dia y Mes en el foro de C/C++ en Foros del Web. hola! ps me gustaria un poko de orientacion tengo este programa el usuario introduce un dia O un mes, luego introduce un numero entero N, ...
  #1 (permalink)  
Antiguo 23/03/2009, 20:51
 
Fecha de Ingreso: marzo-2009
Mensajes: 1
Antigüedad: 15 años, 1 mes
Puntos: 0
Ayuda kon este programa ! Dia y Mes

hola! ps me gustaria un poko de orientacion tengo este programa el usuario introduce un dia O un mes, luego introduce un numero entero N, y el programa debe de calcula el dia o mes correspondiente a N días o meses despues. Mi programa lo logra pero cuando introduces un numero que sobrepase el rango de dias o meses no imprime nada ¿Podrian ayudarme a solucionar esto?

//Bibliotecas
#include <stdio.h>
#include <conio.h>
#include <string.h>

//Constantes
#define MESES 12
#define DIAS 7

//Tipos
typedef TaDias[DIAS];
typedef TaMes[MESES];

//Prototipos
void Dia(char *sDia1, int eDia);
void Mes();

//Programa Principal
void main () {

//Variables
int eOpc, eDia, eMes;
char *sDia1;

//Inicio

do {
clrscr();
printf ("\nIntroduce una opci¢n\n");
printf ("1. DIA\n2. MES\n3. SALIR\n\n");
scanf ("%d", &eOpc);

switch (eOpc) {

case 1: printf ("\nIntroduce un d¡a de la semana: ");
scanf ("%s", sDia1);
sDia1 = strupr (sDia1);
printf ("Introduce un n£mero entero: ");
scanf ("%d", &eDia);

Dia(sDia1, eDia);
break;

case 2:

Mes();
break;

case 3: printf ("Fin del programa");
break;

}
} while (eOpc != 3);

getch();
}


void Dia (char *sDia1, int eDia) {

//Variables
int eTemp;
char *sDias[7]= {"LUNES",
"MARTES",
"MIERCOLES",
"JUEVES",
"VIERNES",
"SABADO",
"DOMINGO" };

//Inicio

for (eTemp = 0; eTemp < MESES; eTemp++) {

if (strcmp (sDia1, sDias[eTemp]) == 0) {

eDia += eTemp;

printf ("Despues de %d d¡as ser* %s\n", eDia, sDias[eDia]);

}
}

getch();

} //Fin Procedimiento Dia


//Procedimiento Mes

void Mes () {

//Variables
int eMes, eTemp;
char *sMes1;
char *sMes[] = {"ENERO",
"FEBRERO",
"MARZO",
"ABRIL",
"MAYO",
"JUNIO",
"JULIO",
"AGOSTO",
"SEPTIEMBRE",
"OCTUBRE",
"NOVIEMBRE",
"DICIEMBRE" };


//Inicio

printf ("\nIntroduce un mes: ");
scanf("%s", sMes1);
sMes1 = strupr (sMes1);

printf ("Introduce un n£mero entero: ");
scanf ("%d", &eMes);

for (eTemp = 0; eTemp <= MESES; eTemp++) {

if (strcmp (sMes1, sMes[eTemp]) == 0) {

eMes += eTemp;
printf ("Despues de %d meses ser* %s\n", eMes, sMes[eMes]);

}

}

getch();

} //Fin Procedimiento Mes
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:27.