時針分針重合問題

一天,小明正坐在沙發上看電視,無聊之餘看了一眼牆上的鐘,此時正好是十二點整,時針和分針恰好重合在一起,一個疑問出現在小明的腦海中——下一次重合會是在什麼時候呢?

分析:
分針每分鐘轉 6度
時針每分鐘轉 0.5度 ,一小時轉 30度

重合的話,就說明時針和分針到0點的度數相同,假設現在是X時Y分,則

30*X + 0.5*Y)= (6*Y) 
     Y=300*X/55 

通過上述式子,就可以求出
X={ 0,1,2,。。。,11}時 , Y=?

實現代碼如下:

#include <stdio.h>
/**
*  時針分針重合問題
*  一分鐘: 分針走6度,時針走0.5度
*  如:1時Y分
*  1*30+0.5Y-6Y=0
*
*/

float fun(int x){
    int y=0;
    return (300.0*x)/55.0;
}


int main(){
    int i;
    for (i=0;i<12;++i){
        printf("%d : %lf \n",i,fun(i));
    }
    return 0;
}

1

從圖中我們可以看到,最後一項11:60實際上是等於第一項0:00的。因此除了在11時時針和分針不會重合外,其他時段內都會有一次重合的機會。

=========== 王傑 原創作品轉載請註明出處==============

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