当前位置: 首页 > 编程日记 > 正文

中国电子学会青少年编程能力等级测试图形化四级编程题:小猴数草莓

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

我们将有关编程题目的教学视频已经发布到抖音号21252972100,小马老师上,可配合图文一起学习。

小猴数草莓

小猴摘了一筐草莓,它拿出来数一数有多少颗。第一行放1颗,第二行放2颗,第三行放3颗,第四行放4颗,第五行放5颗。一边摆一边数,最后,说出草莓的总数。

1. 准备工作

(1)背景为“Forest”;

(2)角色小猴“Monkey”、草莓“Strawberry”。

2. 功能实现

(1)调整小猴和草莓的大小(大小的具体数值自定义);

(2)小猴说:“今天摘了多少颗草莓呢?数一数吧!”2秒;

(3)第一行1颗草莓,第二行2颗,第三行3课,第四行4颗,第五行5颗,注意草莓要整齐排列;

(4)每出现一颗草莓,小猴就说出当前草莓的数量,例如第一颗草莓出来,小猴说“1”, 第二颗出来,说“2”,第三颗出来,说“3”;

(5)最后小猴说:“一共15颗草莓”2秒,程序结束;

请注意:只能使用一个Strawberry角色,不能通过编辑草莓造型的方法实现。

3. 设计思路与实现

(1)角色分析

  • 角色:小猴“Monkey”、草莓“Strawberry”

(2)背景分析

  • 背景:“Forest”

(3)所用积木块介绍

a. 运动类

  • 将角色移动到舞台中央指定的X/Y坐标位置,默认坐标(x:0, y:0)。
  • X的范围(-240, 240);Y的范围(-180, 180)。

  • 如果增加的是正数,则在原先角色的位置上往右移动对应的数值;如果增加的是负数,则在原先角色的位置上往左移动对应的数值。即实现左右移动的功能。

  • 角色的Y坐标不变,X坐标变为设定的值。

  • 如果增加的是正数,则在原先角色的位置上往上移动对应的数值;如果增加的是负数,则在原先角色的位置上往下移动对应的数值。即实现上下移动的功能。

b. 外观类

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

  • 将角色的大小调整为指定的值。
  • 该积木块通常在角色初始化时使用。

  • 在舞台中隐藏当前角色。

c. 事件类

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

  • 消息事件启动积木块,消息是脚本之间、角色之间、舞台与角色之间沟通的重要通道。
  • 当接收到消息时,执行后面的程序指令。

  • 广播一个消息,消息可以新建,数量也不限制,不同的消息可以用于不同的场合。

  • 广播一个消息,等待消息接收对象的脚本处理完之后再来继续下面的脚本。

d. 控制类

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

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

e. 运算类

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

f. 变量类

  • 已经建立的变量,我的变量是默认生成的变量。

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

g. 画笔类

  • 清除舞台中画笔绘制的所有图案。

  • 将角色对象像印章一样印在屏幕上。

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

a. 角色设置

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

在角色区,点击“选择一个角色”菜单,在角色库中选择 小猴“Monkey”、草莓“Strawberry”。

b. 舞台背景设置

在舞台区,点击“选择一个背景”菜单,在背景库中选择“Forest”。

(5)脚本编写

新建变量“row”,用于存储当前绘制Strawberry的行数。

新建变量“sum”,用于存储当前绘制Strawberry的总个数。

a. 角色:Monkey

新建消息“开始”,用于向Strawberry传递开始绘制的消息。

流程描述:

当按下绿棋时:

  1. 开始:点击绿棋,开始执行代码。
  2. 小猴说:“今天摘了多少颗草莓呢?数一数吧!”2秒;
  3. 广播“开始”,通知“Strawberry”开始绘制。

当接收到“说数量”消息时:

  1. 小猴说已经绘制的草莓数 “sum”,1秒。(每出现一颗草莓,小猴就说出当前草莓的数量,例如第一颗草莓出来,小猴说“1”, 第二颗出来,说“2”,第三颗出来,说“3”;)

当接收到“结束”消息时:

  1. 小猴说:“一共15颗草莓”2秒,程序结束。

b. 角色:Strawberry

新建消息“说数量”,用于向Monkey传递说出绘制Strawberry总数量的消息。

新建消息“结束”,用于向Monkey传递绘制Strawberry结束的消息。

流程描述:

当按下绿棋时:

  1. 开始:点击绿棋,开始执行代码。
  2. 初始化舞台:全部擦除
  3. 初始化大小:50
  4. 初始化状态:隐藏

当接收到“开始”消息时:

  1. 初始化位置:X = -180,Y = 120
  2. 初始化变量:row = 1,sum = 0
  3. 重复执行直到 row>5:
    • 重复执行 row 次:绘制一行草莓
      • 图章
      • sum = sum + 1
      • 广播“说数量”并等待
      • 将X坐标增加50
    • X = -180,移动到本行的最左边
    • Y = Y - 50,移动到下一行
    • row = row + 1
  4. 广播“结束”。

4. 评分标准

(1)背景、角色选择正确;(1分)

(2)草莓按照先后顺序出现,第一行1颗、第二行2颗,第三行3颗,第四行4颗,第五行5颗。(5分)(注意:每行得1分,五行全部正确5分,如果通过编辑草莓的造型来实现以上效果只得1分)

(3)小猴可以按顺序说出草莓的数量。(3分)(注意:出来一颗,说一个数,说完下一颗才出现,说数量和草莓显示顺序乱了只能得1分)

(4)最后说出“一共15颗草莓” 。(1分)

5. 考点分析

四级考试大纲与说明

(一)考核目标

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

(二)能力目标

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

(三)考试标准

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

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

(四)知识块

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

备注:

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

(五)题型配比及分值

相关文章:

python_day16_pythom-mysql-API

16、py_mysql操作 pymysql 是python中操作mysql的模块,其使用方法和py2的mysqldb几乎相同 16.1、pymysql模块安装 1. pip install pymysql 16.2、使用 16.2.1、导入模块 import pymysql connpymysql.connect(host127.0.0.1,port3306,userroot,passwdxiong,dbs1) #…

linux打开 root .m2,小辣椒M2 (LA-M2)获取ROOT权限教程,新手root必看

小辣椒M2 (LA-M2)如何获取ROOT权限?用什么ROOT工具最简单?请跟着小编一起来看看如何用奇兔刷机对小辣椒M2 (LA-M2)进行一键ROOT,小编特别亲手制作了详细的小辣椒M2 (LA-M2) ROOT教程图解,非常适合初次接触ROOT的朋友,具体步骤如下&#xff…

C++中typedef和define的区别

typedef和#define的用法与区别 一、typedef的用法 在C/C语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像: typedef int INT;typedef int …

SVN 钩子操作-同步更新web目录

一个简单的钩子演示:也可以网上搜索其他高级的 本次想要达到的功能是:每次用户commit 到仓库后,仓库的钩子会自动把程序又更新的www/的web发布目录 1.现在web目录下创建一个test.com网站目录 [rootwentao13 ~]# cd /var/www/html/ [rootwenta…

【组队学习】【32期】深入理解计算机系统

深入理解计算机系统 航路开辟者:李岳昆、易远哲领航员:初晓宇航海士:叶前坤、沈豪 基本信息 开源内容:https://github.com/datawhalechina/team-learning-program/tree/master/ComputerSystems内容属性:公测课程内容…

linux中怎么退出执行过程,(进程)处理过程中的Linux:从执行到退出

Linux是一个多任务操作系统,表面上看,同时运行许多任务——即进程。每一个进程都在系统中留下足迹。这里介绍一些检查这些足迹的工具,并且还要说明蔓延的/proc目录到底是什么。欢迎归来。上周我们考察Linux调度程序如何区分要运行的进程的优先…

git - 简易指南

http://www.bootcss.com/p/git-guide/转载于:https://www.cnblogs.com/passer1991/p/3279333.html

python爬虫 智联招聘 工作地点

需求:智联上找工作的时候,工作地点在搜索页面只能看到城市-区。看不到具体的地址。(离家近的工作肯定优先考虑)思路:爬取搜索页面(页面一)然后进去其中一个内页,再爬工作地点&#x…

2021-2022-1 线性代数知识点总结的视频

01 线性方程组02 矩阵及其运算03 向量空间(上)03 向量空间(下)04 特征值与特征向量05 实对称矩阵与二次型2021 线性代数 第三章 习题课2021 线性代数 第四章 习题课2021-2022-1 线性代数考试要点2021-2022-1 线性代数知识点总结 …

win使用linux共享打印机,Ubuntu 12.04以及 Window 下使用共享打印机

目前针对各个办公室里面都已经配置打印机了,为了节约资源,该打印机想必已经被网管设置成了共享,然而我们应该如何进行使用呢?笔者目前常用的系统是Ubuntu 12.04,偶尔想打印东西的不想切换到XP系统下,就此简单介绍下如何…

poj3280Cheapest Palindrome(记忆化)

链接 真的1A了。。 一开始想复杂了 想着补全再删 没想好 后来想到递归 大的回文串是由小的推过来的 一直递归下去 对于当前的i&#xff0c;j可以选择保留或者删除 选个最小的 1 #include <iostream>2 #include<cstring>3 #include<algorithm>4 #include<…

【组队学习】【32期】推荐系统-新闻推荐系统实践

推荐系统-新闻推荐系统实践 航路开辟者&#xff1a;罗如意领航员&#xff1a;肖桐航海士&#xff1a;汪志鸿、吴忠强、赖敏材、王辰玥、毛伟、宋禹成、陈雨龙、管柯琴 基本信息 开源内容&#xff1a;https://github.com/datawhalechina/fun-rec内容属性&#xff1a;公测课程…

Redis配置到本地以及可视化工具的安装运用

配置到本地出错&#xff1a; 解决方法&#xff1a; 1、先把原来的服务删除了 2、在重新配置服务。 真的&#xff0c;我就是这样的。。 转载于:https://www.cnblogs.com/stujike/p/8672165.html

linux消息通信无法接收,进程间通信:消息队列有关问题:进程1接收不到进程2的消息...

进程间通信&#xff1a;消息队列有关问题&#xff1a;进程1接收不到进程2的消息进程间通信&#xff1a;消息队列有关问题&#xff1a;进程1接收不到进程2的消息日期&#xff1a;2014-05-16  浏览次数&#xff1a;20365 次进程间通信&#xff1a;消息队列问题&#xff1a;进程1…

java听课笔记(四)

程序流程控制 分支 顺序 循环 if switch&case 1 2 3 调整 break 1.6 前 switch(byte、short、char、int) 1.7 可放String 循环 while&#xff08;次数不确定&#xff09; do while for&#xff08;确定次数&#xff09; break&#xff08;跳出本层循环&#xff09; continu…

【组队学习】【32期】scikit-learn教程

scikit-learn教程 航路开辟者&#xff1a;江季领航员&#xff1a;李牧轩航海士&#xff1a;武帅、陈宇 基本信息 开源内容&#xff1a;&#xff1a;https://github.com/datawhalechina/machine-learning-toy-code/tree/main/ml-with-sklearn内容属性&#xff1a;公测课程内容…

css一个很好用的hover显示

之前一直想在样式实现&#xff0c;hover时显示其他div&#xff0c;今天终于找到了&#xff0c;(*^▽^*).a悬停时显示.b.a:hover .b {display: block;}转载于:https://www.cnblogs.com/HCXiao/p/8677713.html

c语言输入函数有什么作用,c语言的输入函数有哪些

c语言的输入函数有&#xff1a;1、scanf()函数、从标准输入stdin读取格式化输入&#xff1b;2、getchar()函数&#xff0c;从标准输入stdin获取一个字符&#xff1b;3、gets()函数&#xff0c;从标准输入stdin读取一行&#xff1b;4、getch()函数。【相关学习推荐&#xff1a;C…

dubbo学习过程、使用经验分享及实现原理简单介绍

一、前言部门去年年中开始各种改造&#xff0c;第一步是模块服务化&#xff0c;这边初选dubbo试用在一些非重要模块上&#xff0c;慢慢引入到一些稍微重要的功能上&#xff0c;半年时间&#xff0c;学习过程及线上使用遇到的些问题在此总结下。整理这篇文章差不多花了两天半时间…

AutoIt脚本在做自动化操作的时候,如何进行错误捕获?

我的自动化脚本在运行的时候&#xff0c;会生成一个界面&#xff0c;点击该页面上的按钮能够进行自动化操作。 经常遇到的一个问题是&#xff1a; 脚本运行一半&#xff0c;GUI程序出现了异常情况&#xff0c;这个时候&#xff0c;再次点击生成的界面上的按钮&#xff0c;不会有…

中国电子学会青少年编程能力等级测试图形化四级编程题:计算生肖

「青少年编程竞赛交流群」已成立&#xff08;适合6至18周岁的青少年&#xff09;&#xff0c;公众号后台回复【Scratch】或【Python】&#xff0c;即可进入。如果加入了之前的社群不需要重复加入。 我们将有关编程题目的教学视频已经发布到抖音号21252972100&#xff0c;小马老…

用c语言写一个两线程程序,如何用C语言实现多线程

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼Windows操作系统&#xff0c;C语言实现多线程&#xff1a;#include #include DWORD APIENTRY ThreadOne ( LPVOID threadArg ){printf ( "线程开始啦&#xff0c;参数是&#xff1a;%s\n" , (char *)threadArg );return …

中国电子学会青少年编程能力等级测试图形化四级编程题:抽奖

「青少年编程竞赛交流群」已成立&#xff08;适合6至18周岁的青少年&#xff09;&#xff0c;公众号后台回复【Scratch】或【Python】&#xff0c;即可进入。如果加入了之前的社群不需要重复加入。 我们将有关编程题目的教学视频已经发布到抖音号21252972100&#xff0c;小马老…

github README.md教程

github README.md教程 总结 github中README.md通过特殊字符标记和缩进来达到格式控制&#xff0c;也可以用HTML标签来实现格式控制。 教程一&#xff1a; Markdown 的目标是实现「易读易写」&#xff0c;兼容HTML。 但是&#xff0c;在 HTML 区块标签间的 Markdown 格式语法将不…

this.options[selectedIndex]的使用

<select id"sel" οnchange"javascript:getSelect();"> <option value"a">选择</option> <option value"bdd">be</option> <option value"c">ce</option> <option value"…

c语言怎么创建一个h文件,求助C语言大佬 , 只会写到一个.c文件里 ,不会用.h头文件...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼简答题】实验任务&#xff1a;学生成绩统计从键盘输入一个班(全班最多不超过30人)学生某门课的成绩&#xff0c;当输入成绩为负值时&#xff0c;输入结束&#xff0c;分别实现下列功能&#xff1a;(1)统计不及格人数并打印不及格学…

Makefile所有内嵌函数

一、文本处理函数以下是GNU make内嵌的文本&#xff08;字符串&#xff09;处理函数。1 $(subst FROM,TO,TEXT)函数名称&#xff1a;字符串替换函数—subst。函数功能&#xff1a;把字串“TEXT”中的“FROM”字符替换为“TO”。返回值&#xff1a;替换后的新字符串。示例…

青少年编程竞赛交流群周报(第041周)

2021年12月12日&#xff08;周日&#xff09;晚20:00我们在青少年编程竞赛交流群开展了第四十一期直播活动。 一、直播内容 我们直播活动的主要内容如下&#xff1a; 讲解了上次测试中小朋友们做错的题目 Scratch青少年编程能力等级测试模拟题&#xff08;四级&#xff09;。…

docker的用法

Docker是开发人员和系统管理员构建&#xff0c;发布和运行分布式应用程序的开放平台&#xff0c;可以在笔记本电脑、数据中心、虚拟机还有云服务器上运行。 使用Docker工具来提高生产率的方法&#xff1a;本地依赖&#xff1a;你需要在本地系统上快速试用 magento 吗&#xff1…

android 背景切换动画效果代码,关于Android shape gradient背景渐变

百度后&#xff0c;发现渐变色不仅可以根据xml来实现&#xff0c;也可以用java代码来实现&#xff0c;由于目前没有那么多时间&#xff0c;只记录xml实现的方法&#xff1b;以后在记录Java实现的代码。通过Shape gradient标签来实现首先来看gradient标签所有的渐变属性&#xf…