我是靠谱客的博主 现实保温杯,最近开发中收集的这篇文章主要介绍java猜测生日游戏_猜生日游戏,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在看《Java语言程序设计--基础篇》第3章有个有意思的例子,给出5组日期,只要回答你的日期是否在这5组日期即可猜出你的生日是哪天。这5组日期是:

1  3    5   7

9  11 13  15

17 19 21 23

25 27 29 31

2   3   6   7

10 11 14 15

18 19 22 23

26 27 30 31

4   5   6   7

12 13 14 15

20 21 22 23

28 29 30 31

8   9  10  11

12 13 14 15

24 25 26 27

28 29 30 31

16 17 18 19

20 21 22 23

24 25 26 27

28 29 30 31

如果你的生日是28号,那么你的回答应该是:0, 0, 1, 1, 1。这样程序就会猜出你的生日是28号。至于为什么是这样,书上也给出了对应的解释。

首先,这5组日期的第一个数分别是:1、2、4、8、16,它们分别对应的二进制是:1、10、100、1000、10000。而从1到31的十进制数,最多用5个二进制数就可以表示,这也就解释了为什么需要5组日期了。

其次,每组日期的数字也是有限制的,如果你把这些数字都换成二进制,就比较容易看出规律了,为了减少输入这里只列举第2组:

00010  00011  00110  00111

01010

最后

以上就是现实保温杯为你收集整理的java猜测生日游戏_猜生日游戏的全部内容,希望文章能够帮你解决java猜测生日游戏_猜生日游戏所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部