试了半天不知道哪里错了,有没有大佬帮忙测试一下输入什么会出问题
#include<cstdio>
#include<iostream>
using namespace std;
int tomin(double time);
void shijian(int time);
int main()
{
int s,vpm;
cin >> s >> vpm;
if(s == 0)
printf("07:50");
else if(vpm == 0)
;
else
{
double vps = vpm / 60.0;
double times = s / vps;
if(times - (int)times != 0)
times += 1;
int timem = tomin(times);
// cout << vps << endl << times << endl << timem << endl;
shijian(timem);
}
}
int tomin(double time)
{
int min = time / 60;
if((int)time % 60 != 0)
min++;
if((time - (int)time != 0) && (int)time % 60 == 0)
min++;
return min+10;
}
void shijian(int time)
{
if(time % 60 == 0)
{
int hour = time / 60;
int anshour = 8 - hour;
if(anshour < 0)
{
anshour += 24;
printf("%02d:00",anshour);
}
else
{
printf("%02d:00",anshour);
}
}
else
{
if(time <= 480)
{
int hour = time / 60;
int min = time % 60;
int anshour = 8 - hour;
int ansmin = 60 - min;
if(min != 0)
anshour--;
if(ansmin == 60)
{
anshour++;
ansmin = 0;
}
printf("%02d:%02d",anshour,ansmin);
}
else
{
time -= 480;
int hour = time / 60;
int min = time % 60;
int anshour = 24 - hour;
int ansmin = 60 - min;
if(min != 0)
anshour--;
if(ansmin == 60)
{
anshour++;
ansmin = 0;
}
printf("%02d:%02d",anshour,ansmin);
}
}
}