Mar 21, 2011 at 11:31pm UTC
#include <iostream>
#include <iomanip>
using namespace std;
// function prototypes
string getDate(int month, int day, int year);
string getMonth(int month);
int getTime(int hours, int minutes);
int getDays(int day);
int main ()
{
// define variables
string date = "",
nameMonth = "";
int time,
month,
day,
year,
hours,
minutes,
totalDays;
char slash,
slash1,
colon;
date = getDate(month, day, year);
nameMonth = getMonth(month);
totalDays = getDays(day);
cout << "Time? (Military Time hh:mm) " << endl;
cin >> hours >> colon >> minutes;
time = getTime(hours, minutes);
system ("pause"); // cause screen to freeze
return 0;
}
string getDate(int month, int day, int year)
{
string dateStr = "";
string nameMonth = "";
bool valid = false;
while (!valid)
{
cout << "Date? (mm/dd/yyyy) " << endl;
cin >> month >> slash >> day >> slash1 >> year;
if ((year <= 1900) || (year >= 2020))
{
cout << "Invalid year. Please re-enter date...\n\n";
continue;
}
if ((month < 1) || (month > 12))
{
cout << "invalid month. please re-enter date...\n\n";
continue;
}
if (day < 1)
{
cout << "invalid day... please re-enter date...\n\n";
continue;
}
if (((day > 30) && ((month == 9) || (month == 4) || (month == 6) || (month == 11)))
{
cout << "Invalid day. Please re-enter. \n\n";
continue;
}
if ((day > 29) && (month == 2))
{
cout << "Invalid day. Please re-enter. \n\n";
continue;
}
if (day > 31)
{
cout << "Invalid day. Please re-enter. \n\n";
continue;
}
//date has passed validation (except for leap year test)
valid = true;
}
return;
}
string getMonth(int month)
{
string monthName;
switch (month)
{
case 1: monthName = "January";
break;
case 2: monthName = "February";
break;
case 3: monthName = "March";
break;
case 4: monthName = "April";
break;
case 5: monthName = "May";
break;
case 6: monthName = "June";
break;
case 7: monthName = "July";
break;
case 8: monthName = "August";
break;
case 9: monthName = "September";
break;
case 10: monthName = "October";
break;
case 11: monthName = "November";
break;
case 12: monthName = "December";
break;
}
cout << monthName << endl;
return nameMonth;
}
int getDays(int month)
{
int numDays;
switch(day)
{
case 1: numDays = 31;
break;
case 2: numDays = 28; //February is not showing up correctly.
break;
case 3: numDays = 31;
break;
case 4: numDays = 30;
break;
case 5: numDays = 31;
break;
case 6: numDays = 30;
break;
case 7: numDays = 31;
break;
case 8: numDays = 31;
break;
case 9: numDays = 30;
break;
case 10: numDays = 31;
break;
case 11: numDays = 30;
break;
case 12: numDays = 31;
break;
}
cout << numDays << " days" << endl;
}
int getTime(int hours, int minutes)
{
while (hours > 23 || hours < 1 || minutes > 59)
{
cout << "Error. Try Again. " << endl;
cout << "Time? (Military Time hh:mm) " << endl;
cin >> hours >> colon >> minutes;
}
}
CAN ANYONE HELP ME WITH THESE COMPILING ERRORS? Thanks Rw
Apr 3, 2011 at 6:44am UTC
first error was using string with out #include <string>