【青少年编程】【四级】从小到大排序

news/2024/7/3 3:07:05

「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。

微信后台回复“资料下载”可获取以往学习的材料(视频、代码、文档)。

从小到大排序

小猴子询问输入5个数,存入列表后,将这些数字从小到大排列后重新存入列表。

1. 准备工作

(1)保留舞台默认白色背景;

(2)删除小猫角色,添加Monkey角色。

2. 功能实现

(1)点击绿旗,询问“请输入一个数:”,等待输入,重复5次输入5个数字;

(2)将输入的5个数保存到列表“数组”中;

(3)小猴子说“输入的5个数字从小到大排序”,列表中的数字会小到大排列。

3. 设计思路与实现

(1)角色分析

  • 角色:Monkey

(2)背景分析

  • 背景:默认背景(无色)

(3)所用积木块介绍

a. 外观类

  • 在规定的时间内在舞台上显示输入的文字。

b. 事件类

  • 程序开始积木块。
  • 点击舞台区的绿旗,执行以绿旗开始的所有程序脚本。

c. 控制类

  • 循环积木块:一遍一遍地执行包起来的积木序列。
  • 重复执行指定的次数后停止,该积木块通常在角色移动等场景中使用。

  • 条件判断语句,如果条件返回值为真(bool值),那么执行模块里面的积木指令,如果条件不成立,返回值为假,执行条件判断模块后面的程序指令。

  • 循环积木块:一遍一遍地执行包起来的积木序列
  • 判断条件是否为真,如果尖尖角里面的返回值为真则停止循环

d. 侦测类

  • 角色发出询问,并在舞台下边框弹出对话框,等待用户的输入回答。

  • 实时的侦测用户所输入的回答,并存储在“回答”变量中。

e. 运算类

  • 比较运算,左边等于右边返回true值(真),否则返回false值(假)。

  • 比较运算,左边小于右边返回true值(真),否则返回false值(假)。

  • 算术运算,返回左边与右边的差。

f. 变量类

  • 建立一个变量,输入变量名称,然后选择适用于所有角色还是适用于当前角色。

  • 设置变量的值为给定值,通常用于初始化变量。

  • 设置变量的值为自身的值加X。

  • 建立一个列表,输入列表名称,然后选择适用于所有角色还是适用于当前角色。

  • 将一个元素加入到列表的末尾。

  • 清空列表。

  • 列表中包含项目的数目。

  • 获取列表中索引为X的项目。

  • 将列表中索引为X的项目设置为新的项目Y。

g. 自制积木类

  • 建立一个积木,输入积木名称,然后添加积木的参数,以及选择“运行时是否刷新屏幕”。

(4)角色、舞台背景设置

a. 角色设置

按照题目要求,删除默认的小猫角色。

在角色区,点击“选择一个角色”菜单,在角色库中选择“Monkey”。

b. 舞台背景设置

默认舞台背景设置,无需修改舞台背景。

(5)脚本编写

创建一个列表:“数组”,用于存储输入的五个数以及排序之后的五个数。

a. 角色:Monkey

制作新的积木,“排序”,用于对输入的五个数字进行排序。

新建一个变量:“i”。

新建一个变量:“j”。

函数描述:该排序使用冒泡排序算法,主要思想是通过相邻记录之间的比较和交换,使关键字较小的记录如气泡一般逐渐向上漂移直至水面。

  1. i = 1,变量i用于记录第i个排好序的元素。
  2. 重复执行 数组的项目数-1 次:每次排好一个数字,一共排好 数组的项目数-1 个数字。
    • j = 数组的项目数
    • 重复执行直到 i==j:
      • 如果 数组的第j项 小于 数组的第j-1项,那么交换这两项,即轻的向上移动。
      • j = j-1
    • i = i + 1

流程描述:

当按下绿旗时:

  1. 开始:点击小绿旗,也就是程序启动,就要执行后续的程序指令。
  2. 初始化列表:清空列表“数组”。
  3. 重复执行直到 数组的项目数 == 5:输入五个数字存入列表中。
    • 询问“请输入一个数:”并等待
    • 将“回答”加入数组
  4. 说“输入的5个数字从小到大排序”2秒。
  5. 调用排序积木块,列表中的数字会从小到大排列。

(6)结果展现

插入最后的视频

4. 评分标准

(1)删除小猫角色,添加Monkey角色;(1分)

(2)点击绿旗,询问5次“请输入一个数:”并等待;(2分)

(3)将输入的5个数加入列表;(2分)

(4)编写程序实现:将输入的5个数按照从小到大的顺序显示在列表中。(5分)

5. 考点分析

四级考试大纲与说明

(一)考核目标

学生对编程软件的较强综合操作能力,考查使用软件进行数据处理的能力,同时对函数和过程的理解和使用进行考查,以及学生对已掌握知识的深度综合应用及思考更优程序方案,另针对参加 4 级考试的学生将进行结合分析和计算的情境考查。

(二)能力目标

通过本级考试的学生,逻辑推理能力很不错,对数据的处理,函数和过程等的理解和使用掌握得很不错,对已学知识的综合应用能力很好,具备一定的程序调试和优化能力。学生对编程软件的进一步综合操作能力,考查新建链表,字符串处理,循环的复杂运用,理解函数的作用范 围,理解多线程的概念,同时考查学生对已掌握知识的深度综合应用, 另针对参加 4 级考试的学生将进行难度更高的逻辑推理能力的考查。

(三)考试标准

1、理解并使用链表、函数和多线程。

  • 1)能够新建链表;
  • 2)能够完成对链表中数据的插入、删除;
  • 3)字符串处理;
  • 4)能够自己创建一个有返回值的函数;
  • 5)理解函数的作用范围;
  • 6)理解多线程的概念;
  • 7)循环的复杂运用;
  • 8)逻辑,算法过渡。

(四)知识块

  • 1. 字符串:字符串操作,加密
  • 2. 函数:不同类型函数的创建,参数的设置,返回值,函数的调用
  • 3. 链表:创建链表,实现数据的增、删、改、查,显示和隐藏,找最值,平均值等
  • 4. 大综合:前面所有知识点的综合使用,考查
  • 5. 程序优化:使用已有知识进行问题的优化
  • 6. 逻辑,算法过渡:分析和计算情境考察,如爬楼梯的方法(递归)
  • 7. 循环的复杂运用:循环的结构,循环的嵌套,递归调用

备注:

  • 为本题涉及到的知识点。
  • 为需要掌握,但本题未涉及到的知识点。

(五)题型配比及分值


http://lihuaxi.xjx100.cn/news/252347.html

相关文章

《算法基础:打开算法之门》一1.5 拓展阅读

本节书摘来自华章出版社《算法基础:打开算法之门》一书中的第1章,第1.5节,作者 [美]托马斯 H 科尔曼(Thomas H Cormen),更多章节内容可以访问云栖社区“华章计算机”公众号查看 1.…

2019华为新年贺词

全面提升软件工程能力与实践,打造可信的高质量产品 致全体员工的一封信 我今天写信,是要和大家沟通公司如何全面提升软件工程能力和实践。二十年前的IPD变革,重构了我们的研发模式,实现了从依赖个人、偶然性推出成功产品&#xff…

进程的同步、互斥以及PV原语

在处理进程间的同步与互斥问题时,我们离不开信号量和PV原语,使用这两个工具的目的在于打造一段不可分割不可中断的程序。应当注意的是,信号量和PV原语是解决进程间同步与互斥问题的一种机制,但并不是唯一的机制。 信号量&#xff…

超强可观测体系,助力移动云高效运维| TeaTalk·Online技术探秘系列第1期

引言:“移动云TeaTalkOnline 技术探秘系列第1期来了!2022年,社区重磅推出TeaTalk Online线上直播栏目,分为开源论道、应用实战、技术探秘等系列,邀请实战经验丰富的移动云技术大咖加盟,揭秘云计算核心技术原…

今天学完了ccna

通过10天的学习,终于学完了NA,但是会不会呢?还是个未知数,再就也一知半解的。觉得基础知识太差了,可是看书,又觉得太长了,太多了,晚上老是停电 白天啥也看不进去。热。还是静不下心&…

【MATLAB】矩阵信息的获取

1、矩阵结构 矩阵的结构是指矩阵子元素的排列方式。 函数名称函数功能isempty(A)检测矩阵是否为空isscalar(A)检测矩阵是否是单元素的标量矩阵isvector(A)检测矩阵是否是只具有一行或一列元素的一维向量issparse(A)检测数组是否是系数矩阵 返回1表示该矩阵是某一特定类型的矩…

《HTML5游戏编程核心技术与实战》——2.8 小结

本节书摘来自异步社区《HTML5游戏编程核心技术与实战》一书中的第2章,第2.8节,作者: 向峰 更多章节内容可以访问云栖社区“异步社区”公众号查看。 2.8 小结 本章介绍了canvas的一些常用的操作,作为HTML5的最重要的特性,canvas使得…

eclipse 出现user operation is waiting

project->properties->Builders 将带有 validator的选项全部去掉,然后保存一切就ok了。 转载于:https://www.cnblogs.com/fengnan/p/10276162.html