Problem: Write a C++ program to take two inputs from the user, the year N, and d, the day of the week that January 1st falls on. Assume that the days are encoded as follows: (Mon: 1, Tues: 2, Wed: 3,   Sun: 7). Based on this, print all the dates on which Sunday falls on in that year.You must also take into account if the year is a leap year or not. The year is said to be a leap year if the year is divisible by four, except for end-of-century years where the year should be divisible by 400.

Example:Let s say you were interested in finding out all the dates when Sunday is going to be this year i.e. 2024, then the input to your code should be:2024 1Explanation for the above input: 2024 is the year and 1st Jan happened to be on Monday this year, hence was number-encoded as 1The output should list the dates of all Sundays in the year N, month-wise on a new line.

Constraints (Assume)1000 <= N (Year) <= 35001 <= d <= 12

Student submission:
#include <iostream>                                                                        
using namespace std;
int main(){
	int N;
	int d;
	cin >> N >> d;
	if((N%4==0)){
		if(N%100==0){
			if(N%400==0){
				int y = 7 -d;
				int fd = 1 + y;
				for(int i = 1; i <= 12; i++){
					cout << "Month " << i << ": ";
					if((i==1)||(i==3)||(i==5)||(i==7)||(i==8)||(i==10)||(i==12)){
							while(true){
								if(fd<=31){
									cout << fd << " ";
								      fd +=7;	
								}
								else{
									fd = fd - 31;
									break;

								}
							}
											
							}
					if((i== 2)){
						while(true){
                                                                if(fd<=29){
                                                                        cout << fd << " ";
                                                                      fd +=7;
                                                                }
                                                                else{
                                                                        fd = fd - 29;
                                                                        break;

                                                                }
                                                        }
					}
					else{
						while(true){
                                                                if(fd<=30){
                                                                                                                                     cout << fd << " ";

                                                                      fd +=7;
                                                                }
                                                                else{
                                                                        fd = fd - 30;
                                                                        break;

                                                                }
                                                        }
					}
				}
			}
		
		else{
			int y = 7 -d;
                                int fd = 1 + y;
                                for(int i = 1; i <= 12; i++){
                                        cout << "Month " << i << ": ";

                                        if((i==1)||(i==3)||(i==5)||(i==7)||(i==8)||(i==10)||(i==12)){
                                                        while(true){
                                                                if(fd<=31){
									                                                                        cout << fd << " ";

                                                                      fd +=7;
                                                                }
                                                                else{
                                                                        fd = fd - 31;
                                                                        break;

                                                                }
                                                        }

                                                        }
                                        if((i== 2)){
                                                while(true){
                                                                if(fd<=28){
                                                                                                                                               cout << fd << " ";

                                                                      fd +=7;
                                                                }
                                                                else{
                                                                        fd = fd - 28;
                                                                        break;

                                                                }
                                                        }
                                        }
                                        else{
                                                while(true){
                                                                if(fd<=30){
                                                                                                                                                cout << fd << " ";
                                                                      fd +=7;
                                                                }
                                                                else{
                                                                        fd = fd - 30;
                                                                        break;

                                                                }
                                                        }
                                        }
                                }

		
		}
		}
		
	}
	else{
	int y = 7 -d;
                                int fd = 1 + y;
                                for(int i = 1; i <= 12; i++){
                                        cout << "Month " << i << ": ";

                                        if((i==1)||(i==3)||(i==5)||(i==7)||(i==8)||(i==10)||(i==12)){
                                                        while(true){
                                                                if(fd<=31){
                                                                                                                                                cout << fd << " ";

                                                                      fd +=7;
                                                                }
                                                                else{
                                                                        fd = fd - 31;
                                                                        break;

                                                                }
                                                        }

                                                        }
                                        if((i== 2)){
                                                while(true){
                                                                if(fd<=28){
                                                                                                                                               cout << fd << " ";

                                                                      fd +=7;
                                                                }
                                                                else{
                                                                        fd = fd - 28;
                                                                        break;

                                                                }
                                                        }
                                        }
                                        else{
                                                while(true){
                                                                if(fd<=30){
                                                                                                                                                cout << fd << " ";
                                                                      fd +=7;
                                                                }
                                                                else{
                                                                        fd = fd - 30;
                                                                        break;

                                                                }
                                                        }
                                        }
                                }


	}
}

Grading criterion: Correct I/O incl. Format
Rating A: I/O Handled correctly
Rating B: Error in I/O
Rating C: 0
Rating D: 0
Assigned grade: A