→ A C++ program by me in which you can get the day of any given date. I have written this code by using some mathematical formulas of finding day using a given date, if you find any error or if you want to give me any suggestion then please let me know.
#include<iostream>
using namespace std;
int main()
{
int date,month,year;
int yc,mc,cc,dn,lyc;
cout<<"Enter Date, Month and Year to know the Day:";
cin>>date>>month>>year;
if(month>12 || date>31)
{
cout<<"Wrong input";
}
else{
//for year
int h=year%100;
yc=(h+(h/4))%7;
//for leap year
if(year%4 ==0)
{
if(year%100 ==0)
{
if(year%400 == 0)
{
lyc=1;
}
}
else
{
lyc=1;
}
}
if(lyc==1)
{
if(month>2)
{
lyc=0;
}
else
{
lyc=1;
}
}
//for month
if(month==01 || month ==10)
{
mc=0;
}
else if(month==05)
{
mc=1;
}
else if(month==8)
{
mc=2;
}
else if(month==02||month==03||month==11)
{
mc=3;
}
else if(month==06)
{
mc=4;
}
else if(month==9 || month ==12)
{
mc=5;
}
else if(month==05)
{
mc=1;
}
//for century
int a=year/10;
int b=a/10;
if(b==19 || b==23)
{
cc=0;
}
else if(b==18 || b==22)
{
cc=2;
}
else if(b==17 || b==21)
{
cc=4;
}
else if(b==20)
{
cc=6;
}
//applying formula
int finalResult=(yc+mc+cc+date-lyc)%7;
switch(finalResult)
{
case 0: cout<<"Sunday";
break;
case 1: cout<<"Monday";
break;
case 2: cout<<"Tuesday";
break;
case 3: cout<<"Wednesday";
break;
case 4: cout<<"Thursday";
break;
case 5: cout<<"Friday";
break;
case 6: cout<<"Saturday";
break;
}
}
}
#include<iostream>
using namespace std;
int main()
{
int date,month,year;
int yc,mc,cc,dn,lyc;
cout<<"Enter Date, Month and Year to know the Day:";
cin>>date>>month>>year;
if(month>12 || date>31)
{
cout<<"Wrong input";
}
else{
//for year
int h=year%100;
yc=(h+(h/4))%7;
//for leap year
if(year%4 ==0)
{
if(year%100 ==0)
{
if(year%400 == 0)
{
lyc=1;
}
}
else
{
lyc=1;
}
}
if(lyc==1)
{
if(month>2)
{
lyc=0;
}
else
{
lyc=1;
}
}
//for month
if(month==01 || month ==10)
{
mc=0;
}
else if(month==05)
{
mc=1;
}
else if(month==8)
{
mc=2;
}
else if(month==02||month==03||month==11)
{
mc=3;
}
else if(month==06)
{
mc=4;
}
else if(month==9 || month ==12)
{
mc=5;
}
else if(month==05)
{
mc=1;
}
//for century
int a=year/10;
int b=a/10;
if(b==19 || b==23)
{
cc=0;
}
else if(b==18 || b==22)
{
cc=2;
}
else if(b==17 || b==21)
{
cc=4;
}
else if(b==20)
{
cc=6;
}
//applying formula
int finalResult=(yc+mc+cc+date-lyc)%7;
switch(finalResult)
{
case 0: cout<<"Sunday";
break;
case 1: cout<<"Monday";
break;
case 2: cout<<"Tuesday";
break;
case 3: cout<<"Wednesday";
break;
case 4: cout<<"Thursday";
break;
case 5: cout<<"Friday";
break;
case 6: cout<<"Saturday";
break;
}
}
}
Comments
Post a Comment