夾角有多大(2076)

 

夾角有多大(題目已修改,注意讀題)

Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 9053 Accepted Submission(s): 3611


Problem Description
時間過的好快,一個學期就這麼的過去了,xhd在傻傻的看着表,出於對數據的渴望,突然他想知道這個表的時針和分針的夾角是多少。現在xhd知道的只有時間,請你幫他算出這個夾角。

注:夾角的範圍[0,180],時針和分針的轉動是連續而不是離散的。


Input
輸入數據的第一行是一個數據T,表示有T組數據。
每組數據有三個整數h(0 <= h < 24),m(0 <= m < 60),s(0 <= s < 60)分別表示時、分、秒。


Output
對於每組輸入數據,輸出夾角的大小的整數部分。


Sample Input
2
8 3 17
5 13 30


Sample Output
138
75


-------------------------------------------------------------------


#include <stdio.h>
#include<math.h>
#include <stdlib.h>


int main()
{
    int n,s,f,m;
    scanf("%d",&n);
    while(n--)
    {
        double k,sd,fd;
      scanf("%d%d%d",&s,&f,&m);
      if((s>=0&&s<24)&&(f>=0&&f<60)&&(m>=0&&m<60))
      {
            if(s>=12)
                s=s-12;   //超過12點的別忘記
            
            sd = s*30.0+0.5*f+(1.0/120)*m;  //因爲sd是double型的,所以後面的加數都要是double型的纔可以。
            fd = f*6.0+0.1*m;    //因爲fd是double型的,所以後面的加數都要是double型的纔可以。 


            k =fabs(sd-fd);
            if(k<180)
             printf("%d\n",(int)(k));
            else
            printf("%d\n",(int)(360-k));
      }


    }




    return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章