C++ 我是编程新手

C++ 我是编程新手,c++,C++,我找不到错误有人能帮我吗 #include<iostream> using namespace std; int main(){ int a,b,c,d,h,m; cin>>a>>b>>c>>d; h = c-a; m = d-b; if (h<0) { h=24+(c-a); } if(m<0) { m=60+(

我找不到错误有人能帮我吗

#include<iostream>
using namespace std;

int main(){
    int a,b,c,d,h,m;

    cin>>a>>b>>c>>d;
    h = c-a;
    m = d-b;

    if (h<0)
    {
        h=24+(c-a);
    }

    if(m<0)
    {
        m=60+(d-b);
        h--;
    }

    if(a==c && b==d)
    {
        cout<<"O JOGO DUROU 24 HORA(S) E 0 MINUTO(S)"<<endl;
    }
    else
    {
        cout<<"O JOGO DUROU "<<h<<" HORA(S) E "<<m<<" MINUTO(S)"<<endl;
    }

    return 0;
}
#包括
使用名称空间std;
int main(){
INTA,b,c,d,h,m;
cin>>a>>b>>c>>d;
h=c-a;
m=d-b;
如果(h1个数据集会导致问题,从
10:15开始,到第二天
10:14结束(或者,我怀疑是
23:01
23:59
之间的任何持续时间)

通过代码运行这些值(稍微减少并重新格式化,但功能相同):


您将看到,我还简化了一些赋值(使用
+=
),并通过将
0,0
调整为
24,0
,在减去开始时间的结束时间之前,将全部转换为分钟,从而不再需要两个独立的
cout
语句

如果结束时间小于开始时间,则表示开始一天,结束另一天。此情况在
If
语句中处理

#include<iostream>
using namespace std;

int main(){
    int a,b,c,d;

    cin>>a>>b>>c>>d;
    int start_time = a * 60 + b;
    int end_time  =  c * 60 + d;

    int duration = end_time - start_time;
    if(start_time >= end_time) duration = (24 * 60 - (start_time - end_time));  

    cout<<"O JOGO DUROU "<<(duration / 60)<<" HORA(S) E "<<(duration % 60)<<" MINUTO(S)"<<endl; 
}
#包括
使用名称空间std;
int main(){
INTA、b、c、d;
cin>>a>>b>>c>>d;
int start_time=a*60+b;
int end_time=c*60+d;
int duration=结束时间-开始时间;
如果(开始时间>=结束时间)持续时间=(24*60-(开始时间-结束时间));

如果您告诉人们您遇到了什么样的错误,以及您在修复错误时尝试了什么样的方法,那么Cout可能会有所帮助。您需要说明代码尝试执行什么操作,预期行为与观察到的行为是什么,以及复制粘贴编译器错误(如果有)。
if(m
if (m < 0) {
    m += 60
    h--;
}
if (h < 0) {
    h += 24
}
if (h == 0 && m == 0) {
    h = 24;
}

cout << "O JOGO DUROU " << h << " HORA(S) E " << m << " MINUTO(S)" << '\n';
#include<iostream>
using namespace std;

int main(){
    int a,b,c,d;

    cin>>a>>b>>c>>d;
    int start_time = a * 60 + b;
    int end_time  =  c * 60 + d;

    int duration = end_time - start_time;
    if(start_time >= end_time) duration = (24 * 60 - (start_time - end_time));  

    cout<<"O JOGO DUROU "<<(duration / 60)<<" HORA(S) E "<<(duration % 60)<<" MINUTO(S)"<<endl; 
}