Witam,
Może ktoś mi pomoc w dopracowaniu kalkulatora dat w c++? Siedzę już trochę nad tym i nie mam bladego pomysłu co zrobić, jaki kod napisać żeby program poprawnie liczył dni pomiędzy jedna datą a drugą. Może ktoś mi pomoc?
Np. jak podam datę 1.10.2020 i 16.02.2020 to wynik jest 13. Na pewno to nie jest idealny program,kod jest taki se.
Ważne jest żeby program prawidłowo działał.Kod poniżej.
#include <iostream>
#include <windows.h>
using namespace std;
int main()
{
int d,m,y,d1,y1,m1,x,x1,b,l,q;
cout << "Podaj date w odpowiedniej kolejnosci (DD/MM/RRRR) "<<endl ;
cout<<"Dzien: ";
cin>>d;
cout<<"Miesiac:";
cin>>m;
cout<<"Rok:";
cin>>y;
cout<<d<<"/"<<m<<"/"<<y;
y=365*y;
m=m;
d=d*31;
if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)
{
m=31*12;
}
else if(m==2)
{
m=29*12;
}
else
{
m=30*12;
}
cout<<endl;
x=d+m+y;
cout << "Podaj druga date w odpowiedniej kolejnosci (DD/MM/RRRR) "<<endl ;
cout<<"Dzien: ";
cin>>d1;
cout<<"Miesiac:";
cin>>m1;
cout<<"Rok:";
cin>>y1;
cout<<d1<<"/"<<m1<<"/"<<y1;
y1=365*y1;
d1=d1*31;
m1=m1*12;
if(m1==1||m1==3||m1==5||m==7||m1==8||m1==10||m1==12)
{
m1=31*12;
}
else if(m1==2)
{
m1=29*12;
}
else
{
m1=30*12;
}
cout<<endl;
x1=d1+m1+y1;
if(x==x1)
cout<<"0";
else
{
cout<<x<<endl;
cout<<x1;
b=x-x1;
cout<<"Roznica dat to: "<<endl;
cout<<"dni="<<b<<endl;
cout<<"1.Exit"<<endl;
cin>>q;
switch(q)
{
case 1:
system("cls");
break;
}
/*l=b/7;
if(b/7==3)
cout<<"PRAWDOPODOBNIE byla to Sroda";
else if(b/7==6)
cout<<"PRAWDOPODOBNIE byla to Sobota";
else if(b/7==7)
cout<<"PRAWDOPODOBNIE byla to Niedziela";
else if(b/7==1)
cout<<"PRAWDOPODOBNIE byl to Poniedzalek ";
else if(b/7==2)
cout<<"PRAWDOPODOBNIE byl to Wtorek ";
else if(b/7==4)
cout<<"PRAWDOPODOBNIE byl to Czwartek ";
else if(b/7==5)
cout<<"PRAWDOPODOBNIE byl to Piatek ";
cout<<"Tygodni="<<b/7
<<endl;
cout<<"Miesiecy="<<b/12<<endl;
cout<<"Lat="<<b/365<<endl;
cout<<"Godzin="<<b/24<<endl;
cout<<"Minut="<<b/24*3600<<endl;
cout<<"Sekund="<<b/3600*60<<endl;*/
}
return 0;
}