gpt4 book ai didi

C++ 两次时间差

转载 作者:太空宇宙 更新时间:2023-11-04 14:29:21 24 4
gpt4 key购买 nike

这个程序的目标是计算开始时间和结束时间之间的时间差。

开始和结束时间将以 4 位整数形式输入,并且需要计算时间差。输入的时间以 hh:mm 表示,不带“:”。

Example: 
first time: 0800
second time: 1755
Time elapsed: 9 hr and 55 min

这是我的代码:

int main()
{

int first_time;
int second_time;
int dif_time;
double mod_time;

cout<<"Enter first time" << endl;
cin>>first_time;

cout<<"Enter second time" << endl;
cin>>second_time;

dif_time = second_time - first_time;

mod_time = dif_time % 60;

std::cout << "Time elapsed: " << dif_time << " hours" << mod_time << " minutes" << endl;

}

问题是它确实以小时为单位正确输出时间。对于如何改进此程序的任何建议,我们将不胜感激。

最佳答案

最好以分钟为单位转换所有内容,计算差值,然后转换为小时和分钟:

#include <iostream>

int main()
{
int first_time;
int second_time;

std::cout << "Enter first time" << std::endl;
std::cin >> first_time;

std::cout << "Enter second time" << std::endl;
std::cin >> second_time;

int first_time_min = first_time / 100 * 60 + first_time % 100;
int second_time_min = second_time / 100 * 60 + second_time % 100;
int diff_time_min = second_time_min - first_time_min;

std::cout << "Time elapsed: " << diff_time_min / 60 << " hours " << diff_time_min % 60 << " minutes" << std::endl;
}

关于C++ 两次时间差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48663843/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com