求逆序数-第12届蓝桥杯Scratch省赛3真题第3题
[导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第43讲。
第12届蓝桥杯青少年组省赛分两次进行,这是2021年4月24日举行的第二次省赛考试初级组,形式为在线考试。Scratch分为初级组和中级组,其中初级组面向7~10岁孩子,中级组面向11~14岁孩子。
求逆序数,本题是第12届蓝桥杯Scratch第二次省赛真题初级组编程第3题,题目要求考生编程求逆序数,在对话框中输入指定范围的数字,小猫会说出输入数字和它的逆序数。
先来看看题目的要求吧。
一.题目说明
编程实现:
在对话框中输入指定范围的数字,小猫会说出输入数字和它的逆序数。
例如:1234,它的逆序数字:4321。
具体要求:
1). 点击绿旗,出现对话框;
2). 小猫说:“请输入10-999之间的任意数字”;
3). 在输入框输入数字后,小猫说出输入数字;
4). 等待1秒钟,小猫说出逆序数字;
5). 如果输入数字不在指定输入范围内,则小猫说不成立。
评判标准:
5分:满足要求1);
10分:满足要求2);
15分:满足要求3);
15分:满足要求4);
15分:满足要求5)。
二.思路分析
本题使用的是Scratch默认的舞台白色背景和小猫角色,如图所示:
本题是一个典型的IPO模式编程,所谓的IPO是指输入-处理-输出,详细的介绍可以参考《数字与图形-第13届蓝桥杯Scratch国赛真题第5题》。
输入、处理和输出的过程相对比较简单,其流程如图所示:
这里的重点是如何求逆序数,原理其实比较简单,就是从最后一个数字开始往前挨个取出数字,进行重新连接,具体的过程,可以用流程图描述如下:
有了流程图,我们就可以很轻松地来编写代码了。
三.编程实现
根据上面的思路分析,我们可以分3步来编写程序:
创建变量
完成主体逻辑
得到逆序数
1). 创建变量
根据前面的思路分析,本题需要使用3个变量,分别是“输入数字”、“逆序数”和“i”,先创建好变量,如图所示:
这里的变量使用全局变量即可,其中,输入数字是指用户通过键盘输入的数字,逆序数就是最终要得到的数字,而i则是计数器,用于表示当前是第几个数字。
2). 完成主体逻辑
接下来,我们就可以编写程序的主体逻辑了,根据上面的第一个流程图,在小猫角色中编写代码如下:
代码也比较好理解,简要说明两点:
①. 要确保数字在10到999之间(包括10和999),用数学来描述就是“10 ≤ 输入数字 ≤ 999”,但是Scratch中没有这种连写方式,需要拆分成两个条件,然后使用逻辑运算进行合并。这里拆分成了“输入数字 < 10”和"输入数字 > 999",然后使用逻辑或连接,表示的是不成立的情况。
②. 否则指令目前是空的,具体实现请看第3步。
3). 得到逆序数
重点来了,如果数字在10到999范围内,就需要获取它的逆序数了,如果将数字当作字符串来看的话,其实就是如何使用Scratch来操作字符串了。
在Scratch中,和字符串相关的运算指令有如下几个:
在本题中,我们需要用到前面3个指令,需要注意的是第一个指令“连接苹果和香蕉”。如果使用变量逐个来连接字符,该变量的初始值需要设置为空,而不是0,所谓空,就是去掉圆圈中的内容,什么都不用写,如图所示:
我们要得到逆序数,那就应该从后面往前面挨个取出字符,因此,需要先将i设置为“输入数字的字符数”,如果有两个数字,i就是2,如果有3个数字,i就是3。接着就是循环将取出的字符进行连接即可,每连接一个字符,就将i减1,直到i=0,结束循环,具体的代码如图所示:
将这段代码放到前面的“否则”指令里面即可。
四.总结与思考
本题难度系数为2,一共31个积木块,分值为60,涉及到的知识点主要包括:
Scratch问答模块,包括询问并等待和回答指令;
变量的使用;
字符串操作及字符串运算指令的灵活运用;
循环编程,这里用到的是重复直到循环;
比较运算符和逻辑运算符的组合使用;
IPO模式的理解与应用。
总体来说,这是一道简单的题目,解决题目的核心是Scratch字符串操作,通常需要结合循环和变量逐个取出字符,进行相应的处理。
字符串处理在高级语言编程中(比如Python、C++、Java等)十分常见,也是非常重要的。相对来说,在Scratch图形化编程中,字符串的功能并不强大,只需要熟练掌握好前面提到的4个指令即可。
如果你觉得文章对你有所帮助,别忘了点赞,你的鼓励是我坚持继续写下去的最大动力,Thanks♪(・ω・)ノ。
求逆序数-第12届蓝桥杯Scratch省赛3真题第3题相关推荐
- 鲨鱼戏水-第12届蓝桥杯Scratch省赛1真题第2题
[导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第54讲. 第12届蓝桥杯青少年组省赛分两次进行,这是2020年10月19日举行的第一次省赛 ...
- 篮球游戏-第12届蓝桥杯Scratch省赛2真题第4题
[导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第47讲. 第12届蓝桥杯青少年组省赛分两次进行,这是2020年10月19日举行的第一次省赛 ...
- 女巫的魔法-第12届蓝桥杯Scratch省赛3真题第2题
[导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第44讲. 第12届蓝桥杯青少年组省赛分两次进行,这是2021年4月24日举行的第二次省赛考 ...
- 绘制同心圆-第12届蓝桥杯Scratch省赛1真题第3题
[导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第53讲. 第12届蓝桥杯青少年组省赛分两次进行,这是2020年10月19日举行的第一次省赛 ...
- 电灯开关-第12届蓝桥杯Scratch省赛2真题第1题
[导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第50讲. 第12届蓝桥杯青少年组省赛分两次进行,这是2020年10月19日举行的第一次省赛 ...
- 王子回家-第12届蓝桥杯Scratch省赛2真题第3题
[导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第48讲. 第12届蓝桥杯青少年组省赛分两次进行,这是2020年10月19日举行的第一次省赛 ...
- 密室逃脱-第12届蓝桥杯Scratch国赛真题第5题
本文转自于"超平的编程课"公众号,查看更多教程,可以移步至公众号. [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第3 ...
- 文字特效-第12届蓝桥杯Scratch国赛真题第1题
本文同步发表于"超平的编程课"公众号,更多教程,可移步至公众号. [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第7讲 ...
- 存钱罐-第12届蓝桥杯Scratch国赛真题第3题
本文转自于"超平的编程课"公众号,更多教程,可移步至公众号. [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第5讲. ...
最新文章
- Entity Framework 4.1/4.3 之五 (DBContext 之 2 查询功能)
- 烂泥虚拟机硬盘简简单单扩容
- SHELL中的IF判断 ​
- html骨架标签 0907
- 浏览器展示CSS伪类的动画和过渡效果应用
- Python指南--错误和异常
- 关于期权的若干硬知识,知道这些就不那么担心了
- 为什么要使用MVP架构
- 论项目管理中当面沟通的重要性
- win10计算机系统优化设置,win10系统电脑如何进行系统优化
- 木兰当事人回应!承认部分基于 Python 二次开发
- 2007舜宇杯ACM程序设计浙江省赛结果
- ERROR: Unable to access 'C:\Users\鏉庨摥\.emulator_console_auth_token': emulator consol...解决方法
- 互联网公司的中台到底是什么
- 【YOLOv7/v5系列算法改进NO.45】首发最新特征融合技术RepGFPN(DAMO-YOLO)
- java窗口上 显示学号和姓名_java编程 完成下图所示的图形用户界面设计,要求在界面中输入个人的班级、学号、姓名信息后,点击“...
- 正交表设计法设计测试用例
- linux强大的convert命令(可以对图像做各种处理!)
- Android手机:破解锁屏密码
- 亚洲金融危机会否重来 人民日报(海外版) 2007年6月11日
热门文章
- 2022网安保研经验帖
- java开发微信公众号图片上传功能,不吃透都对不起自己
- 如何恢复因为chrome同步而删除的书签
- 备战金九银十,腾讯 T4 梳理 2022 年最全 999 道 Java 岗必备面试题答案
- 【北交所周报】继北证50指数后,北交所推出融资融券交易细则;新股慧为智能上市当日收涨22.13%,远航精密上市即破发;...
- springboot 发送邮件 QQ邮箱 535error
- python列表增加行_openpyxl追加行、指定位置插入行
- LDMFA,LDMFD,STMFA,STMFD,LDMEA,LDMED,STMEA,STMED
- 工业相机——选型及参数
- qq授权登录【网站应用】-java版本