思路:利用时针与分针的夹角来计算。参考:上一篇文章

因为电子钟表,表针的跳动不是连续的,譬如分钟每次跳动6度,时针每次跳动0.5度。而编写程序时变量h小时,m分钟每次增量为1,所以我们设夹角gap为(-6~6之间)。这样带来另一个问题,一次重合接近和重合分开甚至是完全重合,最多可能出现3次夹角小于gap值。下面是Java实现代码。

package XiaoMi;import java.util.Scanner;public class test8 {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stub// TODO Auto-generated method stub/*Scanner scan = new Scanner(System.in);String str = scan.nextLine();String s[] = str.split(":");int h, m;h = Integer.valueOf(s[0]);m = Integer.valueOf(s[1]);double gap = (30 * h - 5.5 * m) % 360;System.out.println("时针与分针的夹角为:" + gap);*/int count =0;for(int h=0; h<24; h++){for(int m=0; m<60; m++){double gap = (30 * h - 5.5 * m) % 360;if(-6.0 < gap && gap < 6.0){//if(-3.5 < gap && gap < 3.5){System.out.println(h + ":" + m);count++;}}}System.out.println("共重合:" + count +"次");}}

运行结果:

0:0
0:1
1:5
1:6
2:10
2:11
3:16
3:17
4:21
4:22
5:27
5:28
6:32
6:33
7:38
7:39
8:43
8:44
9:49
9:50
10:54
10:55
11:59
12:0
13:5
14:10
15:16
16:21
17:27
18:32
19:38
20:43
21:49
22:54
23:59
共重合:35次

进一步分析结果,0点~10点阶段总计算两次接近重合,实际上为重合的接近与离开,故(-11);0:0与23:59也为同样情况,故(-1);11:59与12:0也为同样情况,故(-1)。 那么一共重合次数为:22次

接下来换个思路来讲:

由于时针1分钟旋转的圆心角度数为0.5度,分针1分钟旋转的圆心角度为6度,当两针第一次重合时后到第二次重合,分针比时针多旋转过的圆心角度数为360度,所以两针再次重合需要的时间为:

t=65+5/11 分,

这类问题实际上是分针追时针的追击问题,它的公式是:    t= s/(v1-v2) ,S=60(格),分针速度:V1=1 格/分,时针速度:V2= 1/12 格/分,所以,计算得到t=65+5/11 分,

根据以上计算,每隔65+5/11 分时针和分针重合一次。     即,从12点开始,每经过65+5/11 分,时针与分针重合一次,    全天共重合 22次 。      一昼夜有24×60=1,440(分),所以两针一昼夜重合22(次)。

重合次数=1440/(65+5/11)=22次

分述如下:

1:(05+5/11)分→

2:(10+10/11)分→

3:(16+4/11)分→

4:(21+9/11)分→

5:(27+3/11)分→

6:(32+8/11)分→

7:(38+2/11)分→

8:(43+7/11)分→

9:(49+1/11)分→

10:(54+6/11)分→

12:00分   可见,12个小时只重合了11次!

→   一天24小时,但是从下午开始到24点又重复了上午12小时的运转,所以下午也是和早上的12小时一样!

所以,11乘以2=22(次)。

能够发现在上面程序输出中,每次重合都比上次晚了65+5/11 分,即一小时零5分钟。如

1:5
2:10
3:16
验证了程序的正确性。

【Java算法】一天24小时中,时针和分针一共重合多少次?相关推荐

  1. java计算时针和分针的夹角_【Java算法】一天24小时中,时针和分针一共重合多少次?...

    思路:利用时针与分针的夹角来计算.参考:上一篇文章 因为电子钟表,表针的跳动不是连续的,譬如分钟每次跳动6度,时针每次跳动0.5度.而编写程序时变量h小时,m分钟每次增量为1,所以我们设夹角gap为( ...

  2. 时针分针重合问题与时针、分针、秒针重合问题

    时针分针重合问题与时针.分针.秒针重合问题实质都是数学问题,可以用数学方法直接解决: 相应的C代码: //时针与分针的重合时的时间 #include<stdio.h> int main(v ...

  3. java 角度计算_java计算时针和分针之间的夹角

    //计算时针和分针之间的夹角 import java.lang.Math; public class ClockAngle { public static void main(String[] arg ...

  4. java模拟时钟源代码_Android实现模拟时钟(简单+漂亮)--时针、分针、秒针

    前言 前不久在网上看见Android实现的模拟时钟,感觉十分有意思,这里是地址: 秒表.笔者突然对其有了兴趣,也想去实现以下自己的模拟时钟.折腾了一阵子总算是弄出来了 现在将实现方式共享出来,大家一些 ...

  5. java计算时针和分针的夹角_【小米面试题】-给定一个具体时间,计算时针与分针之间的角度...

    给定一个具体时间,计算时针与分针之间的角度 在下面解法中,h表示小时,m表示分钟.同时,假定h的范围是0~23. 我们得到以下规则: 1)分针的角度(从12点整开始算起):360*(m/60) 2)时 ...

  6. 时针,分针和秒针的重合问题

    问题: 在一天的24小时之中,时钟的时针.分针和秒针完全重合在一起的时候有几次?都分别是什么时间?你怎样算出来的? 分析: 初看此问题觉得很简单,但是网上各种版本的答案都各不相同,那到底谁是对的呢? ...

  7. 百词斩笔试题:一天内时针、分针、秒针转过的角度

    题目描述 给定一天内先后的两个时间,求时针.分针.秒针在时钟表盘上转动了多少角度. 注意:为了保证计算精度,请使用double类型进行计算. 输入描述 输入两行,分别代表两个时间点A和B,A和B都为2 ...

  8. 【小米面试题】-给定一个具体时间,计算时针与分针之间的角度

    给定一个具体时间,计算时针与分针之间的角度 在下面解法中,h表示小时,m表示分钟.同时,假定h的范围是0~23. 我们得到以下规则: 1)分针的角度(从12点整开始算起):360*(m/60) 2)时 ...

  9. html插入flash时钟,教你利用Flash制作一个会走动的时钟(时针,分针,秒针)

    其实制作时钟的方法很多,在此小编利用Flash也制作一个时钟,就当是学习CS3语言的编程技巧吧.下面是具体的实现步骤. 工具/原料 Adobe Flash CS3 方法/步骤 1.新建一Flash文档 ...

最新文章

  1. 如何在OpenCV中为InRange阈值选择颜色的最佳HSV值
  2. android evaluater_android – 带有test.R.java的Robolectric
  3. 【专访】KDD2018主席熊辉教授:数据挖掘与深度学习结合新趋势
  4. clion 工程打开选项 安全模式预览 Preview in Safe Mode 信任工程 Trust Project 简介
  5. Javascript日期格式化指定格式的字符串实现
  6. cnpm install时提示resource busy or locked,syslink...
  7. Linux操作系统基础解析之(五)——grep命令家族及正则表达式初识
  8. Hive 老当益庄 | 深度解读 Flink 1.11:流批一体 Hive 数仓
  9. jquery一个元素绑定了多个 click 事件,如何取消其中的一个
  10. python 搭建web_webpy搭建一个简单的网站
  11. fwoa中做excel导入时page理解
  12. 030-sysctl
  13. BZOJ3142 [Hnoi2013]数列
  14. C/C++基础编程基础专项题库
  15. 百度ai 性别_是的,ai可能是种族主义者和性别歧视者,所以我们该怎么办
  16. 关于组件之间使用provide和inject传值
  17. 驱动开发之注册表:获取注册表HKEY_CURRENT_USER对应路径(SID)
  18. FANUC机器人的通讯方式(4)TIA博途如何添加机器人组态网络
  19. 罗克韦尔自动化牵手FBS2017 推动中国食品饮料行业“智”变
  20. 基于matlab的光学薄膜特性分析,基于matlab的光学薄膜特性分析.doc

热门文章

  1. 报名丨“眼界大开 声临其境”网易首届音视频技术大会倒计时!
  2. 0318互联网新闻 | Snapchat下月进军游戏平台;阿里巴巴将上线二哈智能防骚扰电话的应用程序...
  3. 通过游戏的方式与陌生人聊天,破冰是如何做到的?
  4. Mybatis-Helloword
  5. 如何利用 gulp 压缩混淆 “上古”时期的项目文件
  6. 受软银收购利好影响 ARM股价大涨近50%
  7. 大容量磁盘分区表、文件系统、分区工具的选择
  8. 一个简单的UBB程序
  9. python实现gif动画(matplotlib、imageio、pillow))
  10. numpy中数组维度的理解