题目大意
题目原文:
背景:
在一般的时钟上通常有两根指针:时针、分针。 这个题目是告诉你几点几分,请你的程序响应时针和分针之间的角度。 请注意:所有的角度请响应最小的正角度。 例如:9:00是90度,不是 -90度,也不是270度。
输入:
输入是一连串的时间,每个时间一行,以下列的格式出现: H:M。
1<= H <= 12 00<= M <=59
如果时间是0:00代表输入结束了。 请注意:H可能是1或2位数,M则总是以2位数出现.。 (也就是你在一般电子表上看到的模式。 )
输出:
请输出对应输入时间的时针和分针间的最小正角度。此角度应该介于0到180度。每个输出单独一行。每个输出至小数点以下第三位。
Sample Input
12:009:008:100:00
Sample Output
0.00090.000175.000
算法:
思路很简单只要这个时刻的时针角度和分针角度分别求出后,再求差那么就是时针与分针的角度。
代码:
这里附上我的代码,你可以去提交你的代码验证你的代码是否正确。
View Code
1 #include2 #include 3 int main(void) 4 { 5 double hour,min,a; 6 while(scanf("%lf:%lf",&hour,&min)!=EOF) 7 { 8 if(hour==0&&min==0)break; 9 hour=hour*30.0+min/60.0*30.0;10 min=min*6.0;11 a=fabs(hour-min);12 if(a>180)13 a=360-a;14 printf("%0.3lf\n",a);15 }16 return 0;17 }