0
点赞
收藏
分享

微信扫一扫

ES 8.x的多实例集群搭建与角色规划

[导读]:超平老师的Scratch蓝桥杯真题解读系列在推出之后,受到了广大老师和家长的好评,非常感谢各位的认可和厚爱。作为回馈,超平老师计划推出《Python蓝桥杯真题解析100讲》,这是解读系列的第41讲。

开关灯,本题是2020年9月20日举办的第12届蓝桥杯青少组Python编程选拔赛真题。题目要求编程模拟开关灯效果,在小蓝拉M次灯后,输出灯是点亮状态还是熄灭状态。

先来看看题目的要求吧。

一.题目说明

提示信息:

小蓝家的灯是线型开关的,拉一次灯开,再拉一次灯关,未拉之前灯是熄灭状态。

编程实现:

输入一个正整数M(1 < M < 100),作为小蓝拉灯的次数,判断拉灯M次后,灯是点亮状态还是熄灭状态。

输入描述:

输入一个正整数M作为拉灯的次数(1<M<100)

输出描述:

如果灯是点亮状态输出整数'1”,如果灯是熄灭状态输出整数"0"

样例输入:

5

样例输出:

1

评判标准:

  • 6分:能正确输出一组数据:

  • 6分:能正确输出两组数据;

  • 8分:能正确输出三组数据。

二.思路分析

这是一道简单的模拟算法题,考查的知识点是条件语句和模运算。

开关灯是生活中常见的现象,相信你非常熟悉。对于灯泡来说,只有两种状态,要么是开,要么是关。

图片

刚开始,灯处于熄灭状态,每拉一次灯,状态就发生变化,如下表所示:

次数123456...
状态...

很显然,对于只有两种状态的灯来说,符合奇偶特点,如果拉灯的次数是奇数,则灯亮,如果是偶数,则灯灭。

如此一来,问题就转化为判断M的奇偶性了,只需要一个条件语句即可。

思路有了,接下来,我们就进入具体的编程实现环节。

三.编程实现

根据上面的思路分析,我们编写程序如下:

图片

代码比较简单,只说明一点,m % 2是计算m除以2的余数,结果只有1或者0,如果为1,表示奇数,否则为偶数。

m为奇数时,m % 2的值为1,也就是True,当然你也可以直接写 m % 2 == 1,两者效果是一样的。

至此,整个程序就全部完成了,你也可以输入不同的数字来测试效果了。

四.总结与思考

本题代码在5行左右,涉及到的知识点包括:

  • 输入输出语句;

  • 双分支条件语句;

  • 取模运算符;

本题非常简单,基本上是送分题,关键在于找到开关灯的规律,将问题进行简化。这其实是一道小学二年级的数学题,考查的是数字的奇偶性特点及其应用。

奇数和偶数,也叫单数和双数,是小学数学中非常重要的一个知识点。但是,在课本上,通常只是讲解如何判断奇偶数,对于奇偶性的应用拓展不多。

到了编程领域,你会发现关于奇偶性的判断十分常见,由此而引出的取模运算,应用更加广泛。因此,我们常说数学和编程是相辅相成的,相得益彰。

你还有什么好的想法和创意吗,也非常欢迎和超平老师分享探讨。

如果你觉得文章对你有帮助,别忘了点赞和转发,予人玫瑰,手有余香😄

需要源码的,可以移步至“超平的编程课”gzh。

举报

相关推荐

0 条评论