why doesn’t the code below work for 82800? It works for 90061 , it gives :

Enter seconds

90061[Enter]

Total seconds: 90061

1 day(s)

1 hour(s)

1 minute(s)

1 second(s)

but for 82800 it says the “Total seconds must be greater than zero”

Please check the code below for 82800 it is supposed to give the seconds inputed in days, hours, minutes and seconds.

#include <iostream>

using namespace std;

int main() {

//This program is designed to read in the number of seconds inputed by user and convert it to days, hours, minutes and remaining seconds.

long long int userSeconds; // variable for user input

cout << “Enter seconds” << endl; //prompts user to enter seconds

cin >> userSeconds; // user enters seconds

cout << “Total seconds: ” << userSeconds << endl; //prints user input as a statement

cout << endl;

long long int day = userSeconds / 86400; // converts user input (seconds) into day

userSeconds = userSeconds % 86400; // calculates the remainder of the user’s input

long long int hour = userSeconds / 3600; // calculates hour using the remainder from the above line

userSeconds = userSeconds % 3600; // calculates the remainder of the userSeconds

long long int minute = userSeconds / 60; //calculates minute using the remainder from the above line

userSeconds = userSeconds % 60; //calculates the remainder of the userSeconds

long long int second = userSeconds; //calculates second using the remainder from the above line

// tests if the user input is equal to or greater than 0

if(userSeconds <= 0){

cout << “Total seconds must be greater than zero”;

}

cout << endl;

// outputs the number of days, hours, minutes and seconds if it is applicable

if (userSeconds > 0){

if(day > 0){

cout << day << ” day(s)” <<endl;} //outputs number of days

if(hour > 0){

cout << hour << ” hour(s)” << endl;} //outputs number of hours

if(minute > 0){

cout << minute << ” minute(s)” << endl;} //outputs number of minutes

if(second > 0){

cout << second << ” second(s)” << endl;} //outputs number of seconds

}

return 0;

}