Cálculo de datas em C
Boas,
Estou com uma dificuldade a nível aqui de um código que preciso de fazer para universidade, e cheguei a um ponto onde tenho um brain-freeze :angry:
#include <stdio.h>
int main(){
int ano, dia1, mes1, dia2, mes2, calc1, bissexto;
unsigned int difmes;
bissexto == 0
printf("Escreva o ano: ");
scanf("%d", &ano);
if (ano%4==0 && (ano%100!=0 || ano%400==0)){ /* Verificação Bissexto */
printf("O ano introduzido e bissexto.\n");
bissexto=1;
}
printf("Escreva a primeira data: ");
scanf("%d %d", &dia1, &mes1);
printf("Escreva a segunda data: ");
scanf("%d %d", &dia2, &mes2);
if (mes1%2 == 0 && mes1 != 1 && mes1 != 2) /* Meses Pares Excepto Fev */
calc1 = 31 - dia1;
else if (mes1%2 != 0) /* Meses Impares */
calc1 = 30 - dia1;
else if (mes1 == 2 && bissexto == 1)
calc1 = 29 - dia1;
else if (mes1 == 2 && bissexto == 0)
calc1 = 28 - dia1;
difmes=mes1-mes2;
system("PAUSE");
}
Eu preciso de calcular a diferença (em dias) entre duas datas, e além disso, verificar se o ano é bissexto para saber quantos dias tem Fevereiro, o que já fiz.
Tem de ser mantido simples, sem usar a biblioteca "time", portanto o que eu pensei foi calcular a diferença entre o 1º dia e o fim desse mes, e depois com "difmes" calcular quantos meses são até chegar ao ultimo.
O que eu não estou a conseguir chegar é como faço para somar os dias dos meses que conta difmes por exemplo 31+28+31+30 etc, não estou a chegar lá como faço isso em código.
A minha ideia seria somar esses e depois adicionar o dia2, o que fazia a soma de dias total.
Se alguem me puder ajudar, agradeço =)
Discussão (3)
Carregando comentários...