Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Write a program that can determine the number of days in a month for a specified

ID: 3635345 • Letter: W

Question

Write a program that can determine the number of days in a month for a specified month and year. The program should allow a user to enter two integers representing a month and a year, and it should determine how many days are in the specified month. The integers 1 through 12 will be used to identify the months of January through December. The user indicates the end of input by entering 0 0 for the month and year. At that point, the program prints the number of days in the current month and terminates.

Use the following criteria to identify leap years:
1. A year Y is divisible by 100. Then Y is a leap year if and if only it is divisible by 400. For example, 2000 is a leap year but 2100 is not.
2.A year Y is not divisible by 100. Then Y is a leap year if and only if it is divisible by 4. For example, 2008 is a leap year, but 2009 is not.

Here is the sample run of the program:

Enter month and year: 2 2008[Enter]
29 days
Enter month and year: 0 0[Enter]

The current month, September 2009, has 30 days.

Explanation / Answer

please rate - thanks

#include <iostream>
#include <ctime>
#include <string>
using namespace std;
int getDays(int,int);
int main()
{bool done=false;
int month,year,days=0;
time_t     rawtime;
struct tm* timeinfo;
time( &rawtime );
timeinfo = localtime( &rawtime );

string months[]={"January","February","March","April","May","June",
        "July","August","September","October","November","December"};

cout<<"Enter month and year(0 0 to terminate): ";
cin>>month;
cin>>year;
while(!done)
    {if(month==0&&year==0)
         {done=true;         
          year=timeinfo->tm_year + 1900;
          days=getDays(timeinfo->tm_mon+1,year);
          cout<<"The current month, "<<months[timeinfo->tm_mon]<<" "<<year<<" has ";
          }
    else if(month<1||month>12)
         cout<<"InValid date ";
    else
         days=getDays(month,year);       
     cout<<days<<" days ";
     if(!done)
         {cout<<"Enter month and year(0 0 to terminate): ";
         cin>>month;
         cin>>year;
         }
     }
system("pause");
return 0;

}
int getDays(int month,int year)
{int days;
switch(month)
          {case 1: case 3: case 5: case 7: case 8: case 10: case 12:
                  days=31;
                  break;
            case 2:        
                  days=28;
                     if(year%4==0)
                        if(year%100==0)
                           {if(year%400==0)
                            days++;
                            }        
                        else
                             days++;
                        break;
             default: days=30;           
            }
return days;
}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote