C PROGRAMMING
C program to find the day of your birth
Today we will get to that how we can find our day of birth
How the code works, When you run the code, first you have to enter your birth year, Then you have to enter your birth month, After that, you have to enter your birth date and then the result will come with your the day you’re born, It’s simple and fun to write this piece of code.
Below is the code for the calculation of day your birth
// c program to display the day of your birth
#include<stdio.h>
#include<math.h>
int fm(int date, int month, int year) {
int fmonth, leap;
//leap function 1 for leap & 0 for non-leap
if ((year % 100 == 0) && (year % 400 != 0))
leap = 0;
else if (year % 4 == 0)
leap = 1;
else
leap = 0;
fmonth = 3 + (2 - leap) * ((month + 2) / (2 * month))
+ (5 * month + month / 9) / 2;
//bring it in range of 0 to 6
fmonth = fmonth % 7;
return fmonth;
}
//----------------------------------------------
int day_of_week(int date, int month, int year) {
int dayOfWeek;
int YY = year % 100;
int century = year / 100;
printf("\nDate: %d/%d/%d \n", date, month, year);
dayOfWeek = 1.25 * YY + fm(date, month, year) + date - 2 * (century % 4);
//remainder on division by 7
dayOfWeek = dayOfWeek % 7;
switch (dayOfWeek) {
case 0:
printf("weekday = Saturday");
break;
case 1:
printf("weekday = Sunday");
break;
case 2:
printf("weekday = Monday");
break;
case 3:
printf("weekday = Tuesday");
break;
case 4:
printf("weekday = Wednesday");
break;
case 5:
printf("weekday = Thursday");
break;
case 6:
printf("weekday = Friday");
break;
default:
printf("Incorrect data");
}
return 0;
}
//------------------------------------------
void main() {
int date, month, year;
printf("\nEnter the year ");
scanf("%d", &year);
printf("\nEnter the month ");
scanf("%d", &month);
printf("\nEnter the date ");
scanf("%d", &date);
day_of_week(date, month, year);
}
You can also get the reference of the below video for better understanding
I hope you people enjoy the video and the code, every comment and suggestion will be appreciable.
Nice post