因此我们应该将 453456 秒转换为年、日、小时、分钟和秒。
然而,我似乎无法度过过去的岁月。
这是我目前所拥有的:
#include<iostream>
using namespace std;
int main (){
int secDis;
int years;
const int yearsSec = 31536000;
int days;
cout << "Please give me the time of travel in seconds.";
cin >> secDis;
years = secDis/yearsSec;
days = (yearsSec%secDis) / 1440; /*idk if I am on the right track*/
cout << "You have been traveling for: "
<< years << days;
如果是 453456 秒应该是 0 年 5 天 5 小时 57 分 36 秒。
//我讨厌我的数学技能。
最佳答案
您在计算天数的行中颠倒了 secDis
和 yearsSec
的顺序。
此外,一天中的秒数是:24 x 60 x 60
,即86400
。你差了 60 的订单。
年数后剩余的秒数是(secDis % yearsSec)
。
因此,您需要使用:
days = (secDis % yearsSec ) / 86400;
关于c++ - 我找不到公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36508852/