hoj 1010 The Angle

The interval angle between the hour hand and the minute hand is always among 0 degree and 180 degree(including 0 and 180 degree). For example, when it's 12 o'clock, the angle of the two hands is 0 while 6:00 is 180 degree. Try to calculate any degree when it's between 12:00 to 11:59.

Input
The input data are of various situations. Every team consists of two numbers : the first number stands for the hour(great than 0 and less than or equal to 12) and second represents the minute( among [0, 59]). The input ends when the two numbers are both zeros.
Output
Print out the minimum angle between the two hands with the normal time form outputed.
Input Sample

12 0
12 30
6 0
3 0
0 0

Output Sample

At 12:00 the angle is 0.0 degrees.
At 12:30 the angle is 165.0 degrees.
At 6:00 the angle is 180.0 degrees.
At 3:00 the angle is 90.0 degrees.
 
钟表模拟题,比较水…
#include <stdio.h>
#include <math.h>
int main()
{
    double mAngle,hAngle,a,b,begin;
    int hour,minute;
    while(scanf("%d %d",&hour,&minute)==2)
    {
        if((hour==0&&minute==0)||minute>59||hour>12)
            break;
        a=(double)minute/60;                     //a代表minute给hAngle所带来的增量
        begin=(double)hour;
        if(begin==12)
            begin=0;
        begin+=a;
        hAngle=30*begin;
        mAngle=(double)minute*360/60;
        b=fabs(mAngle-hAngle);
        if(b>180)
         b=360-b;
        printf("At %d:%02d the angle is %.1lf degrees.\n",hour,minute,b);
    }
    return 0;
}
posted @ 2015-12-27 20:36  小白酷狗  阅读(441)  评论(0编辑  收藏  举报