21/03/10 18:48
robrock80
Ciao a tutti. Ho scritto il seguente algoritmo per calcolare i giorni trascorsi a partire da un anno di partenza e un anno di fine (entrambi inclusi) da passare alla funzione. A me sembra che funziona: mi potreste dire se riuscite a trovare qualche bug o comunque se si riesce ad ottimizzarlo?
int getDaysCountFromYearToYear(unsigned int startYear, unsigned int endYear) {
int leapYears = 0;
int normalYears = 0;
if (startYear <= endYear) {
while (startYear <= endYear) {
if (!(startYear % 400 == 0
|| (startYear % 4 == 0 && startYear % 100 != 0))) {
normalYears++;
} else {
leapYears++;
}
startYear++;
}
}
printf("Anni bisestili: %d\n", leapYears);
printf("Anni normali: %d\n", normalYears);
printf("Totale anni: %d\n", normalYears + leapYears);
return (normalYears * 365) + (leapYears * 366);
}
Ultima modifica effettuata da robrock80 21/03/10 20:09
aaa
21/03/10 23:39
HeDo
"nessuno" pensavo ti avesse fatto capire che questa NON è la strada giusta per quello che stai facendo...
aaa