//写的很差,无力tc
7-4 计算火车运行时间 (17 分)
本题要求根据火车的出发时间和达到时间,编写程序计算整个旅途所用的时间。
输入格式:
输入在一行中给出2个4位正整数,其间以空格分隔,分别表示火车的出发时间和到达时间。每个时间的格式为2位小时数(00-23)和2位分钟数(00-59),假设出发和到达在同一天内。
输出格式:
在一行输出该旅途所用的时间,格式为“hh:mm”,其中hh为2位小时数、mm为2位分钟数。
输入样例:
1201 1530
输出样例:
03:29
编译器:C++(g++)
#include <iostream>
#include <cmath>
using namespace std;
int getminute(int a) { //取出四位数的后两位数字
int b, c;
b = a / 100; //b 取出开头两位数字
c = a - b * 100; //c 后面两位数字
return c;
}
int gethour(int a) { //取出四位数字的开头两位数字
int b;
b = a / 100; //取出前两位数字;
return b;
}
int main() {
int start, end;
cin >> start >> end;
int start_minute = getminute(start);
int end_minute = getminute(end);
int start_hour = gethour(start);
int end_hour = gethour(end);
int start_Rminute = start_hour * 60 + start_minute;
int end_Rminute = end_hour * 60 + end_minute;
int Rminute = end_Rminute - start_Rminute; //时间 间隔分钟
int Hour = Rminute / 60;
int Minute = Rminute - Hour * 60;
if (Hour < 10 && Minute < 10) {
cout << "0" << Hour << ":" << "0" << Minute;
}
if (Hour >= 10 && Minute < 10) {
cout << Hour << ":" << "0" << Minute;
}
if (Hour < 10 && Minute >= 10) {
cout << "0" << Hour << ":" << Minute;
}
if (Hour >= 10 && Minute >= 10) {
cout << Hour << ":" << Minute;
}
}