Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Luigi83

Cálculo da diferença de dias entre 2 datas.

Mensagens Recomendadas

Luigi83

Estou agora a começar a aprender C, e preciso de implementar um programa que calcule a diferença entre 2 datas.

Por exemplo:

1ª Data: 2 3 2010

2ª Data: 2 4 2010

A diferença é 31 dias.

Há que também ter em conta se o ano é bissexto. Mas esta parte já consegui.

Mesmo em pseudo-código, já era uma grande ajuda, pois não sei por onde começar.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
merlin3000

queres a diferença em dias? Se for é só reduzir tudo a dias. Simplesmente multiplicas os anos de ambas as datas por 355 e somas 1 por cada ano bissexto. O mesmo com os meses, embora aqui uma lista de dias por mês vai ser necessária e mais uma vez somar 1 se for bissexto e incluir depois de fevereiro. Depois é só somar os dias. Assim que tiveres feito isto para ambas as datas é fazeres o módulo da diferença.

Isto assumindo que tens que fazer isso só a brincar com as datas sem ajudas de bibliotecas ou funções para datas. Porque senão há várias que que dão o tempo em milisegundos de uma determinada data desde de 1970 e podes usar logo esse dado para calcular a diferença.


Criar é Divertido

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
merlin3000

é como veres a diferença entre duas medidas (ex: 1km e 325m , 2km e 100m) se quiseres a diferença em metros tens que reduzir as grandezas a metros, ou seja multiplica os km por 1000. Assim ficavas com 1325m - 2100m, o resultado é a diferença.


Criar é Divertido

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
TheDark

"Melhor"? Melhor era guiá-lo na direcção correcta até ele chegar à solução por ele próprio. Dar a solução completa é fácil, mas não é de todo a "melhor" solução.


Desaparecido.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
mjamado

"Melhor"? Melhor era guiá-lo na direcção correcta até ele chegar à solução por ele próprio. Dar a solução completa é fácil, mas não é de todo a "melhor" solução.

Oh meu amigo, por quem sois...

Nem é tarde, nem é cedo; se é assim que as coisas funcionam por estas bandas, assunto resolvido: posta apagada...  :P

P.S.: também achei piada ao "dar a solução completa é fácil"...  :thumbsup:


"Para desenhar um website, não tenho que saber distinguir server-side de client-side" - um membro do fórum que se auto-intitula webdesigner. Temo pelo futuro da web.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.