Salve gente
premesso che non ne so molto di c...
dovrei fare un programma che mi calcoli la differenza in giorni tra due date...
Dov'è l'errore???? Vi ringrazio anticipatamente...codice:#include "stdafx.h" #include <iostream.h> #include <stdio.h> bool bisestile(int bis){ return (bis%4==0)&&(bis%100!=0)||(bis%400==0); } unsigned int data(unsigned int giorno1,unsigned int mese1,unsigned int anno1,unsigned int giorno2,unsigned int mese2,unsigned int anno2){ unsigned int NUMERO_GIORNI_A=364; int ACCUMULATORE_GIORNI=0; while(anno1>anno2){ ACCUMULATORE_GIORNI+=NUMERO_GIORNI_A; if(bisestile(anno1)) ACCUMULATORE_GIORNI++; anno1--; } while(anno2>anno1){ ACCUMULATORE_GIORNI+=NUMERO_GIORNI_A; if(bisestile(anno2)) ACCUMULATORE_GIORNI++; anno2--; } if(mese1<=12&&mese2<=12) { if(mese1==1) mese1=31; if(mese1==2) mese1=28; if(mese1==3) mese1=31; if(mese1==4) mese1=30; if(mese1==5) mese1=31; if(mese1==6) mese1=30; if(mese1==7) mese1=31; if(mese1==8) mese1=31; if(mese1==9) mese1=30; if(mese1==10) mese1=31; if(mese1==11) mese1=30; if(mese1==12) mese1=31; if(mese2==2) mese2=28; if(mese2==1) mese2=31; if(mese2==3) mese2=31; if(mese2==4) mese2=30; if(mese2==5) mese2=31; if(mese2==6) mese2=30; if(mese2==7) mese2=31; if(mese2==8) mese2=31; if(mese2==9) mese2=30; if(mese2==10) mese2=31; if(mese2==11) mese2=30; if(mese2==12) mese2=31;} else cout << "Errore nella data"<< endl; if(mese1>=mese2) {ACCUMULATORE_GIORNI+=mese1-mese2;} else {ACCUMULATORE_GIORNI+=mese2-mese1;} if(giorno1>=giorno2) {ACCUMULATORE_GIORNI+=giorno1-giorno2;} else {ACCUMULATORE_GIORNI+=giorno2-giorno1;} return ACCUMULATORE_GIORNI; } void main(){ unsigned int giorno1, mese1, anno1, giorno2, mese2, anno2; cout << "Inserisci il giorno della prima data(gg):" <<endl; cin >> giorno1; cout << "Inserisci il mese della prima data(mm):" << endl; cin >> mese1; cout << "Inserisci l'anno della prima data(aaaa):" << endl; cin >> anno1; cout << "Inserisci il giorno della seconda data(gg):" <<endl; cin >> giorno2; cout << "Inserisci il mese della seconda data(mm):" << endl; cin >> mese2; cout << "Inserisci l'anno della seconda data(aaaa):" << endl; cin >> anno2; cout << "La differenza tra le due date in giorni e' " << data(giorno1,mese1,anno1,giorno2,mese2,anno2) << endl; }
Ps: Perdonate tutti quegli "if"

Rispondi quotando