Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<conio.h>
- enum month {Jan=1, Feb , Mar , Apr, May, June, July, Aug, Sep, Oct, Nov, Dec};
- enum day {Sun=1, Mon, Tue, Wed, Thu, Fri, Sat};
- /* function calculating and return the day of the week.
- input: day in the week, month, day for checking.
- output: day in the week after calculating.
- */
- int day_of_the_week (int month, int day, int weekDay)
- {
- int dayOfTheWeek = ((day + (weekDay-1))%7);
- return dayOfTheWeek;
- }
- /* the function checking the invalid inputs.
- input: month, day and weekday.
- output: it tells us that we have a mistake and we need to change it.
- */
- int checkInput (int month, int day, int weekDay)
- {
- int return_=0;
- while (month>12 || day>31 || weekDay>7 || month<1 || day<1 || weekDay<1)
- {
- printf("Invalid input, try again\n");
- printf("Enter month to check:\n");
- scanf("%d", &month);
- printf("Enter day to check:\n");
- scanf("%d", &day);
- printf("Enter the weekday of the 1st of the month:(1-sunday, 2-monday, etc)\n");
- scanf("%d", &weekDay);
- }
- while (day > 28 && month == 2)
- {
- printf("Invalid input, try again\n");
- printf("Enter month to check:\n");
- scanf("%d", &month);
- printf("Enter day to check:\n");
- scanf("%d", &day);
- printf("Enter the weekday of the 1st of the month:(1-sunday, 2-monday, etc)\n");
- scanf("%d", &weekDay);
- }
- while (day > 31 && (month == 12 || month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10))
- {
- printf("Invalid input, try again\n");
- printf("Enter month to check:\n");
- scanf("%d", &month);
- printf("Enter day to check:\n");
- scanf("%d", &day);
- printf("Enter the weekday of the 1st of the month:(1-sunday, 2-monday, etc)\n");
- scanf("%d", &weekDay);
- }
- while (day > 30 && (month == 4 || month == 6 || month == 9 || month ==11 ))
- {
- printf("Invalid input, try again\n");
- printf("Enter month to check:\n");
- scanf("%d", &month);
- printf("Enter day to check:\n");
- scanf("%d", &day);
- printf("Enter the weekday of the 1st of the month:(1-sunday, 2-monday, etc)\n");
- scanf("%d", &weekDay);
- }
- printf("The %d.%d will be ", day,month);
- return_= day_of_the_week(month,day,weekDay);
- return return_;
- }
- int main(void)
- {
- int month =0;
- int day =0;
- int weekDay =0;
- printf("Hello! Welcome to the day calculator!\n");
- printf("Enter month to check:\n");
- scanf("%d", &month);
- printf("Enter day to check:\n");
- scanf("%d", &day);
- printf("Enter the weekday of the 1st of the month:(1-sunday, 2-monday, etc)\n");
- scanf("%d", &weekDay);
- int retInput = checkInput( month,day, weekDay );
- if ( retInput == Sun )
- {
- printf("Sunday.\n");
- }
- else if ( retInput == Mon )
- {
- printf("Monday.\n");
- }
- else if ( retInput == Tue )
- {
- printf("Tuesday.\n");
- }
- else if ( retInput == Wed )
- {
- printf("Wednesday.\n");
- }
- else if ( retInput == Thu )
- {
- printf("Thursday.\n");
- }
- else if ( retInput == Fri)
- {
- printf("Friday.\n");
- }
- else if ( retInput == Sat )
- {
- printf("Saturday.\n");
- }
- getch();
- return(0);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement