请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

扫一扫,登录网站

首页 少儿编程 查看内容
  • 1264
  • 0

python少儿编程之练习题答案

2019-8-5 22:22


给定一个不超过5位数的正整数,然后你判断出几位


上一节课,留下了这道题,其实考的就是多分支结构的知识点

首先要了解解题的思路 一步一步去解 跟做数学题一样
  1. 这是一个不超过5位数的正整数 那范围就是1-99999
  2. 那么有一个最简单的思路
  3. 也就是用这个数去跟不同范围去比较
  4. 代码如下

(15)python少儿编程之练习题答案

  • 大家可能脑子 最先想到的也是这个方法 最笨也是最简单的
  • 先设置一个a值为111
  • 判断是否小于9 那么就是1位数
  • 如果不小于9 但是小于99 就是2位数
  • 以此类推 就会找到最终的区间 输出4


  • 上面的方法没有问题 但是会有一个效率问题,如果给你10位数,你判断语句是否要写10次
  • 如果20位呢 是不是要写20次 那有没有更好的改进方法呢
  • 其实小时候 我看过一个幸运52的电视节目,是李咏主持的,那个时候比较火,里面有一个节目就是猜价格,这个价格会在1-100块之间,然后每次你猜一个数字,主持人会告诉你高了或者低了,5次以内猜中价格,这个商品就送给你了!当时他们就会一个比较折中法来玩这个游戏,先出50,大了就出25,基本上很大概率能获胜。
  • 然后我们回头看这道题,你会发现,5位数只会落到5个区间,那我们就中间的区间去推算,先比较是不是3位数,然后大了,就去判断是否是2位数,如果再不是就肯定是1位数了,这样我们的判断只要三次就可以了,大大减少了判断次数,提高了运行效率!

(15)python少儿编程之练习题答案

  • 如图,代码量虽然没减少多少,但是程序运行的效率提高了,不过以后等我们以后学了递归和封装以后,也不需要写那么多代码,查找20位的数字也只需要几个代码,但是我们要记住这个解题的思路,这才是最重要的!

好了,今天的课就到这里。大家可以自己写一下,练习一下多分支和分支嵌套的用法!

版权申明:本内容来自于互联网,属第三方汇集推荐平台。本文的版权归原作者所有,文章言论不代表儿童塾的观点,儿童塾不承担任何法律责任。如有侵权请联系QQ:3178411746进行反馈。
发表评论

请先 注册/登录 后参与评论

    回顶部