12小时内时针分针重合几次?

1.试试一段小的python代码来理清思路

for hour in range(0, 11, 1):
       for minute in range(0, 59, 1):
              m_angle = minute * 360/60
              h_angle = hour * 360/12 + 360/12/60 * minute    # in this case, '/' is integer divider
              if m_angle == h_angle:  # integer approx. comparing
              print hour, round(30/5.5 * hour, 1) # 30hour + 0.5minute = 6minute, solve minute=30/5.5hour

2. 上述代码里算角度的除法实际上得到的是integer,因此if判断语句得到的(hour,miute)结果并不是真正重合的时间,只是过了这个时间后很快就有一次重合

3. 通过代码也理清了思路,实际上每小时都会有一次重合,至于是什么时间重合,实际上是解下面这个方程:

Continue reading 12小时内时针分针重合几次?

Advertisements