实现一个猜拳小游戏,让CPU来猜测你内心定下的一个数字。猜测的数字范围是1~100,采用二分搜索策略来猜测,且CPU最初猜测的数字是50。比如,如果CPU猜测的数字小了,那么就在50~100之间再猜一个数字,如果猜测的数字大了,那么就在1~50之间猜测一个数字,依次类推。
题目及思路分析
从题述来看,有如下几个关键点需要思考,以及这些关键点对应的解决思路如下:
关键点1.获取用户的输入,你要和计算机玩这个猜数游戏。那么,你得以某种方式告知计算机如何获取你的输入吧!比如计算机猜了一个数,你得告诉计算机猜大了还是猜小了,然后计算机再根据你的指示继续猜测。
关键点2.处理用户的异常输入,
你和计算机玩游戏,计算机再等着你的指示,你却输入了一个莫名其妙的指示,那么计算机也要能处理你的瞎输入。
关键点3.二分搜索策略言?
二分搜索策略,是怎么个策略?
关键点4.你骗了计算机
题述中说,你如果没有骗计算机,计算机会很快猜出。但是你蛋疼,就是要骗人家,那么计算机该如何处理?
2 思路分析
针对提出的几个关键点,我们来一一破解。
关键点1.获取用户的输入
思路:我们预先定义一个规则:
如果计算机猜大了,你输入“g”告诉它大了;
如果计算机猜小了,你输入“l”告诉它小了;
如果计算机猜对了,你输入“y”告诉它猜对了;
如果计算机被骗了,你输入“n”告诉它被骗了;