c++ - 我找不到公式

标签 c++ date time c++-chrono

因此我们应该将 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 秒。

//我讨厌我的数学技能。

最佳答案

您在计算天数的行中颠倒了 secDisyearsSec 的顺序。

此外,一天中的秒数是:24 x 60 x 60,即86400。你差了 60 的订单。

年数后剩余的秒数是(secDis % yearsSec)。 因此,您需要使用:

days = (secDis % yearsSec ) / 86400;

关于c++ - 我找不到公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36508852/

相关文章:

sql - 在 SQL 中显示时间

java - 计算算法的执行时间

c++ - 如何在没有公共(public)构造函数的情况下拥有自己的字符串类?

c++ - 使用 zmq 进行多线程发布

date - 在 SSRS 中显示空白值 ("") 作为日期

SQLite:如何从整数年和月组件创建日期?

r - 提高 R 中 data.table 中两列的粘贴速度(可重现)

c++ - 什么是精度?

c++ - 打印从数字创建的可能字符串

java - 将 "Friday, February 1, 2013"转换为 "2013-02-01"