80分求解

P5707 【深基2.例12】上学迟到

blick_winkel486 @ 2024-11-09 22:47:38

第三个和第五个测试过不了,看来很久都没发现问题

#include <iostream>

int main()
{
    double s,v,hour=0;//hour要初始化为0,防止minute小于60时,hour没有被赋值
    std::cin>>s>>v;
    double minute=s/v+10;
        while(minute>=60)
        {
            hour++;
            minute-=60;
        }

    int start_h = 8 -hour;

    if(minute>0) start_h-=1;
    if(start_h<0) start_h+=24;
    //如果不对minute进行处理,如果minute等于0,会输出07:60;
    if(minute!=0)  //如果minute不等于0,说明yyy还要走一段路,所以要再减去minute分钟
    {    
        if(start_h<10 ) std::cout<<0<<start_h<<":"<<int(60-minute);
        else std::cout<<start_h<<":"<<int(60-minute);
    }
    else//如果minute等于0,说明yyy已经到达学校,所以直接输出时间
    {
        if(start_h<10 ) std::cout<<0<<start_h<<":00";
        else std::cout<<start_h<<":00";

    }

    return 0;
}

|