none
Comparar duas datas para estipular estação do ano em estação meteorologica RRS feed

  • Pergunta

  • Caros amigos preciso fazer uma comparação de duas datas para uma estação meteorológica de trabalho de final de curso.

    Exemplo do dia 21 de dezembro de um ano e 20 de março do ano seguinte é verão, de 20 março a 21 de junho outono, do dia 21 de junho a 21 setembro inverno e 21 de setembro a 21 de dezembro primavera.

    Grato

    sexta-feira, 28 de fevereiro de 2014 17:41

Respostas

  • Ola Fabiano..

    Tente da seguinte maneira..

    class Program
        {
            static DateTime INICIO_OUTONO = new DateTime(1, 3, 20);
            static DateTime INICIO_INVERNO = new DateTime(1, 6, 21);
            static DateTime INICIO_PRIMAVERA = new DateTime(1, 9, 21);
            static DateTime INICIO_VERAO = new DateTime(1, 12, 21);
    
            static void Main(string[] args)
            {
                string estacao = string.Empty;
    
                //recupera dia e mes, desconsiderando o ano.
                DateTime dataAtual = new DateTime(1, DateTime.Now.Month, DateTime.Now.Day);
    
                if (dataAtual >= INICIO_OUTONO && dataAtual < INICIO_INVERNO)
                {
                    estacao = "outono";
                }
                else if (dataAtual >= INICIO_INVERNO && dataAtual < INICIO_PRIMAVERA)
                {
                    estacao = "inverno";
                }
                else if (dataAtual >= INICIO_PRIMAVERA && dataAtual < INICIO_VERAO)
                {
                    estacao = "primavera";
                }
                else if (dataAtual >= INICIO_VERAO || dataAtual < INICIO_OUTONO)
                {
                    estacao = "verao";
                }
    
                Console.WriteLine("Estação do ano atual: {0}", estacao);
                Console.ReadKey();
            }


    Peterson Roberto Oliveira Seridonio
    Desenvolvedor C#
    MCTS Windows 7

    sexta-feira, 28 de fevereiro de 2014 19:01

Todas as Respostas

  • Ola Fabiano..

    Tente da seguinte maneira..

    class Program
        {
            static DateTime INICIO_OUTONO = new DateTime(1, 3, 20);
            static DateTime INICIO_INVERNO = new DateTime(1, 6, 21);
            static DateTime INICIO_PRIMAVERA = new DateTime(1, 9, 21);
            static DateTime INICIO_VERAO = new DateTime(1, 12, 21);
    
            static void Main(string[] args)
            {
                string estacao = string.Empty;
    
                //recupera dia e mes, desconsiderando o ano.
                DateTime dataAtual = new DateTime(1, DateTime.Now.Month, DateTime.Now.Day);
    
                if (dataAtual >= INICIO_OUTONO && dataAtual < INICIO_INVERNO)
                {
                    estacao = "outono";
                }
                else if (dataAtual >= INICIO_INVERNO && dataAtual < INICIO_PRIMAVERA)
                {
                    estacao = "inverno";
                }
                else if (dataAtual >= INICIO_PRIMAVERA && dataAtual < INICIO_VERAO)
                {
                    estacao = "primavera";
                }
                else if (dataAtual >= INICIO_VERAO || dataAtual < INICIO_OUTONO)
                {
                    estacao = "verao";
                }
    
                Console.WriteLine("Estação do ano atual: {0}", estacao);
                Console.ReadKey();
            }


    Peterson Roberto Oliveira Seridonio
    Desenvolvedor C#
    MCTS Windows 7

    sexta-feira, 28 de fevereiro de 2014 19:01
  • Só tenho a agradecer Peterson, obrigado pela atenção. Abração...
    sexta-feira, 28 de fevereiro de 2014 20:24