Programming: C++ C++ Question #4841 from Matt
write a program that ask the user to enter a number of seconds. There are 60 seconds in a min. if the number of seconds entered by the user is greater than or equal to 60, the program should display the number of minutes in that many seconds. There are 3,600 seconds in an hour. If the number of seconds entered by the user is greater than or equal to 3,600, the program should display the number of hours in that many seconds. There are 86,400 seconds in a day. If the number entered by the user is greater than or equal to 86,400, the program should display that number of day in that many seconds.
using namespace std;
long InSeconds; //
why is this external?
const int HOURS_IN_DAY = 24; // it's good form to
const int MINUTES_IN_HOUR = 60; // symbolic constants all caps
int SECONDS_IN_MINUTE = 60;
int seconds; // why are all these
long InMinutes, InHours ;
cout << "This program will
turn your seconds into days,"
<< " hours, minutes and seconds."
cout << "Enter the amount of
Compute seconds, minutes, hours, days in that
Trying to do it in reverse order is causing your
// compute seconds
seconds = InSeconds %
// throw away seconds used in previous statement and
convert to minutes
InMinutes = InSeconds / SECONDS_IN_MINUTE ;
minutes = InMinutes % MINUTES_IN_HOUR ;
// throw away
minutes used in previous statement and convert to hours
InHours = InMinutes /
// compute hours
hours = InHours % HOURS_IN_DAY
// throw away hours used in previous statement and convert to
days = InHours / HOURS_IN_DAY ;
cout << "That's "
if (days > 0)
cout << days << " days " ;
cout << hours << " hours " ;
if (minutes >
cout << minutes << " minutes " ;
if (seconds >0)
<< seconds << " seconds " ;
cout << endl