Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Onigiri en 1 Octubre 2012, 18:57 pm



Título: Ayuda con un problema.
Publicado por: Onigiri en 1 Octubre 2012, 18:57 pm
Hola;
tengo un problema que sinceramente
no entiendo como resolver.
Dice así.

Se lee de una fecha el numero del día (1 a 31) y el numero del mes (1 a 12). Informar la fecha del día siguiente del modo: numero del día y nombre del mes. Suponiendo Febrero siempre con 28 días.
:D


Título: Re: Ayuda con un problema.
Publicado por: Stakewinner00 en 1 Octubre 2012, 19:01 pm
supongo que lo que quieren es k hagas algo como

2/01 pues que tu programa diga 3 de Enero


Título: Re: Ayuda con un problema.
Publicado por: Onigiri en 1 Octubre 2012, 19:06 pm
Exacto pero teniendo en cuenta;
los meses con 31, y 30 días.
Sinceramente estoy teniendo problemas
con el desarrollo de mi algoritmo.
Estoy empezando con  la sentencia switch.


Título: Re: Ayuda con un problema.
Publicado por: Caster en 1 Octubre 2012, 19:09 pm
Pues vete posteando aqui lo que tengas hecho para que podamos ayudarte mejor.

Saludos


Título: Re: Ayuda con un problema.
Publicado por: Onigiri en 1 Octubre 2012, 19:26 pm
Bien
pues lo que hice hasta el momento fue
ésto

Código
  1. #include <conio.h>
  2. #include <iostream.h>
  3. main()
  4. {int d, m, nx;
  5.  
  6. cout<<"\nIngresar dia = ";
  7. cin>>d;
  8. cout<<"\nIngresar mes = ";
  9. cin>>m;
  10.  
  11. nx=d+1;
  12.  
  13. if (nx>=31)
  14.   {cout<<"\nEs el "<<d<<" del "<<m;}
  15. else
  16.  if (nx==28)
  17.    {cout<<"\nEs el 1 de Marzo";}
  18. if (nx==29)
  19.    {cout<<"\nEs el 1 de "<<m;}
  20.  
  21. getch();
  22. }

Pero no me imprime; además que no se como aplicar el switch aquí.
anteriormente tuve un problema similar
que lo pude hacer

Código
  1. #include <conio.h>
  2. #include <iostream.h>
  3. main()
  4. {int n;
  5. cout<<"\nOprime un nro. para empezar = ";
  6. cin>>n;
  7.  
  8. switch (n){
  9. case 1: cout<<"Es domingo";
  10. break;
  11. case 2: cout<<"Es Lunes";
  12. break;
  13. case 3: cout<<"Es Martes";
  14. break;
  15. case 4: cout<<"Es miercoles";
  16. break;
  17. case 5: cout<<"Es jueves";
  18. break;
  19. case 6: cout<<"Es viernes";
  20. break;
  21. case 7: cout<<"Es sabado";
  22. break;
  23. }
  24.  
  25. if ((n<=0||n>=8))
  26. cout<<"ERROR";
  27. getch();
  28. }
  29.  

Pero; este ya no.
Me gustaría saber si dentro del "case 1: (..)"
puedo adherir alguna variable o algo para que
pueda decir con letras el resultado final.

Ej: Introducir el día = 28
Introducir mes = 2.

escribe "Es el 1 de Marzo".


Título: Re: Ayuda con un problema.
Publicado por: leosansan en 1 Octubre 2012, 22:56 pm
Se lee de una fecha el numero del día (1 a 31) y el numero del mes (1 a 12). Informar la fecha del día siguiente del modo: numero del día y nombre del mes. Suponiendo Febrero siempre con 28 días.

Como no es plan de dártelo todo hecho, aquí tienes un código básico que hace lo que quieres. No creo que tengas mayor problema en pasarlo a C++, printf y scanf por cout y cin, y poco más. Deberías "enriquecerlo" para cuando entren número de día o de mes fuera de rango. Es lo que me ha salido a bote pronto, supongo que si lo piensas un poco más podrás abreviarlo:
Código
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5.    int i,dia,mes_;
  6.    char mes [12][10]={"ENERO","FEBRERO","MARZO","ABRIL","MAYO","JUNIO","JULIO","AGOSTO","SEPTIEMBRE","OCTUBRE","NOVIEMBRE","DICIEMBRE"};
  7.  
  8.    printf("DIA =   ");scanf ("%d%*c",&dia);
  9.    printf("MES =   ");scanf ("%d%*c",&i);
  10.    if (dia==31 && (i == 1 ||  i ==3 || i ==5 || i ==7 || i ==8 || i ==10 ) )
  11.        printf("1 / %s\n" ,mes [i]);
  12.    else if (dia==30 && (i == 4 || i ==6 || i ==9 || i ==11  ) )
  13.        printf("1 / %s\n" ,mes [i]);
  14.    else if (dia==31 && i == 12  )
  15.        printf("1 / %s\n" ,mes [0]);
  16.    else if (dia==28 && i == 2  )
  17.        printf("1 / %s\n" ,mes [2]);
  18.    else
  19.        printf("%d / %s\n",dia+1,mes [i-1]);
  20.    return 0;
  21. }


Título: Re: Ayuda con un problema.
Publicado por: Onigiri en 2 Octubre 2012, 02:52 am
Muchas gracias por su
ayuda!
ahora lo estoy haciendo :3