时针:
12h*60=720 --> 360 ///720分钟转一圈,每分钟0.5度
1 --> 0.5
分针:
60 --> 360 ///60分钟转一圈,每分钟6度
1 --> 6
/******最重要的一点***分针所走的时间,时针会走相应的度数***********/
差值:
h*60*0.5+m*0.5-m*6;
=>30*h-5.5*m;
最后把答案控制在[0.000,180.000]之间就行了.
int main()
{
double H,M;
while(scanf("%lf:%lf",&H,&M)!=EOF)
{
if(H==0.0&&M==0.0)
break;
double ans=fabs(30.0*H-5.5*M);
int time=ans/360;
ans=ans-360.0*time;
printf("%.3lf\n",ans<180.0?ans:360.0-ans);
}
return 0;
}