*

Rocland

  • *
  • contador 1
  • mas karma +1/-0
    • Ver Perfil
Programa en #C
« en: Agosto 29, 2015, 10:22:28 pm »
Hola muy buenas noches, tardes o dias, Pasaba por este foro para ver si me pueden ayudar con un programa en C que me dejaron de tarea en la Universidad.

El problema dice: Recibir el día, mes y año como variables enteras  (3 variables diferentes) y desplegar el día siguiente. Validar valores erróneos, meses con 30 o 31 días y año bisiesto.  El mes debe aparecer con letra.
Ya logré hacer el programa el problema es que el mes me lo da con número y lo necesito con letra.
Alguna idea?
Así está mi programa.


#include <stdio.h>
#include <stdlib.h>

int main()
{
    int Dia,Mes,Anio,dias;


    printf("Dame un fecha (Utiliza Numeros)");
    printf("\n\n Dia=");
    scanf("%d",&Dia);
    if(Dia>31 || Dia<1)
       {
        printf("Error, proporsiona una fecha correcta");
        return 0;
       }

    printf("\n\n Mes=");
    scanf("%d",&Mes);
    printf("\n\n Anio=");
    scanf("%d",&Anio);

    switch(Mes)
         {

        case 4:
        case 6:
        case 9:
        case 11:

        dias=30;
        break;
      case 1:

      case 3:

      case 5:

      case 7:

      case 8:

      case 10:
      case 12:

        dias=31;
        break;
      case 2:
          if((Anio%4==0 && Anio%100!=0) || (Anio%400==0))
                {
              dias=29;
              }
        else
              {
                dias=28;
               }
        break;
        default: printf("Error");
        break;
         }
       if (Dia<=dias)
        {
        if (Dia<dias)
        Dia++;
        else
         {
         Dia=1;
         if (Mes==12)
         {
            Mes=1;
            Anio++;
         }
         else
         Mes++;
          }
          printf("\nEl proximo dia sera:%d/%d/%d",Dia,Mes,Anio);



         }





    return 0;
}

Espero me puedan ayudar.
Por favor, apoya esta pregunta en redes sociales


Conecta con tu cuenta para responder


*

Jonathan

  • *****
  • contador 104
  • mas karma +152/-0
  • Don't work hard, work intelligent
    • Ver Perfil
    • Ingeniero en Sistemas Computacionales
Re:Programa en #C
« Respuesta #1 en: Septiembre 01, 2015, 09:09:50 am »
Hola amigo,

Simplemente necesitas crear un arreglo con los nombres de los meses .. tu ya tienes la posicion dentro de ese arreglo para obtener el mes en String..

Código: [Seleccionar]
string[] monthNames = 
    System.Globalization.CultureInfo.CurrentCulture
        .DateTimeFormat.MonthGenitiveNames;

Saludos!