#include <cstdio>
#include <iostream>
using namespace std;
int main ()
{
int seconds, hours, minutes;
cin >> seconds;
hours = seconds/3600;
cout << seconds << " seconds is equivalent to " << int(hours) << " hours " << seconds%(hours*60)
<< " minutes " << (seconds%(hours*3600))-((seconds%(hours*60))*60) << " seconds.";
}
由于某种原因,该程序仅适用于 3600 以上的数字。有谁知道如何解决这个问题?每当我执行低于 3600 的数字时,屏幕都会显示来自 Windows 的消息,说明程序已停止工作。
原文由 user4013823 发布,翻译遵循 CC BY-SA 4.0 许可协议
试试这个,测试和工作:
因为分钟是秒/60,所以再除以 60 相当于将秒数除以 3600,这就是它起作用的原因。