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

中国电子学会青少年编程能力等级测试图形化四级编程题:太空大战

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

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

太空大战

1. 准备工作

(1)选择Galaxy背景;

(2)选择Rocketship角色、Ball角色和Balloon1角色。

2. 功能实现

(1)点击绿旗后,Rocketship角色始终跟随鼠标移动,计时器开始计时;

(2)Balloon1角色出现在舞台上方的随机位置,大小随机,造型随机,间隔随机0.5-3秒后,更换位置、大小和造型,如此重复;

(3)点击鼠标后,发射子弹。Ball角色从当前的Rocketship角色位置,向上方飞出,碰到边缘后,消失。连续点击鼠标,可连续发射子弹;

(4)子弹碰到Balloon1角色后,Balloon1角色消失,得分增加1,播放声音“pop”提示。等待随机0.5-3秒后,Balloon1角色重新出现在舞台上方的随机位置。

(5)游戏运行20秒后,说出得分5秒后,停止运行。

3. 设计思路与实现

(1)角色分析

  • 角色:Rocketship、Ball、Balloon1

(2)背景分析

  • 背景:Galaxy

(3)所用积木块介绍

a. 运动类

  • 角色移动指定的步数,正数就是向前,负数就是向后。

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

  • 将角色朝向某个指定的方向。
  • 角色初始朝向右边,90°方向。

b. 外观类

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

  • 将角色的造型换成指定的造型。

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

  • 在舞台中显示当前角色。

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

c. 声音类

  • 播放指定的声音,声音开始播放的同时立刻执行后面的积木指令。

d. 事件类

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

  • 当角色被点击时,执行后面的程序指令。

e. 控制类

  • 时间间隔,等待指定的时间后执行后面的指令。

  • 循环积木块:一遍一遍地执行包起来的积木序列。
  • 重复执行模块里面的积木指令,相当于一个死循环,永不停止,除非在某个地方结束脚本。

  • 等待判断条件为真后继续执行。若判断条件为假,则一直等待。

  • 将所有的角色和背景的脚本停止执行,下拉倒三角还可以选择“停止当前角色的其它脚本”和“这个脚本”。

  • 当作为克隆体启动时,该克隆体执行的指令。

  • 产生自己的一份克隆,下拉倒三角还可以选择其他角色。

  • 删除克隆体。

f. 侦测类

  • 判断当前角色是否碰到鼠标,下拉可以选择其它角色和舞台边缘。

  • 鼠标当前的X坐标。

  • 鼠标当前的Y坐标。

  • 当我们打开Scratch的时候,计时器就工作了,它不停的计数,以”毫秒"为单位,不停的涨,换句话说,我们打开scratch多长时间,它就记了多长时间的值,当然,这个值对我们没有什么用,所以我们需要使用计时器的时候,先使用侦测里的计时器归零。

  • 初始化计时器,让计时器归零重新开始计时。

g. 运算类

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

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

  • 随机得到设定区间中的任一值。

h. 变量类

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

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

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

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

a. 角色设置

删除默认的小猫角色,从角色库中导入题目要求的三个角色“Rocketship”、“Ball”、“Balloon1”。

b. 舞台背景设置

从背景库中导入题目要求的背景“Galaxy”。

(5)脚本编写

新建变量“得分”,用于记录子弹碰到Balloon1角色后的得分。

新建变量“显示”,用于记录状态下Balloon1是否显示。

a. 角色:Rocketship

流程描述:

当按下绿棋时:

  1. 开始:点击绿旗,程序启动,执行后续指令模块。
  2. 初始状态:面向90°方向。
  3. 变量初始化:得分 = 0。
  4. 计时器归零
  5. 重复执行:
    • 移动到鼠标所在位置(x=鼠标的x坐标,y=鼠标的y坐标)。
    • 如果 计时器 > 20,那么说“得分”5秒,停止所有脚本。

当角色被点击:

  1. 克隆Ball。

b. 角色:Ball

流程描述:

当按下绿棋时:

  1. 开始:点击绿旗,程序启动,执行后续指令模块。
  2. 初始状态:隐藏

当作为克隆体启动时:

  1. 初始朝向:面向0°方向。
  2. 初始位置:移动到“Rocketship”。
  3. 初始状态:显示。
  4. 重复执行:
    • 移动5步。
    • 如果碰到 舞台边缘,那么删除此克隆体。

c. 角色:Balloon1

流程描述:

当按下绿棋时:

  1. 开始:点击绿旗,程序启动,执行后续指令模块。
  2. 初始化变量:显示 = True。
  3. 重复执行:
    • 等待 显示 == True。
    • 显示
    • 移动到舞台上方的随机位置。
    • 大小设置为随机大小。
    • 造成设置为随机造型。
    • 等待0.5~3.0秒。

当按下绿棋时:

  1. 开始:点击绿旗,程序启动,执行后续指令模块。
  2. 重复执行:
    • 等待 碰到Ball。
    • 将得分增加1。
    • 播放声音Pop。
    • 隐藏。
    • 将“显示”设为False。
    • 等待 0.5~3.0秒。
    • 将“显示”设为True。

4. 考点分析

四级考试大纲与说明

(一)考核目标

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

(二)能力目标

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

(三)考试标准

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

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

(四)知识块

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

备注:

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

(五)题型配比及分值

相关文章:

Pycharm开发环境设置与熟悉。

练习基本输入输出&#xff1a; print(你好,{}..format(name)) print(sys.argv) 库的使用方法&#xff1a; import ... from ... import ... 条件语句&#xff1a; if (abs(pos()))<1: break 循环语句&#xff1a; for i in range(5): while True: 函数定义&#xff1a; def …

oracle 默认表空间 10g,Oracle10g 表空间管理

1.表空间分类&#xff1a;(1)临时表空间&#xff1a;存放临时数据(2)数据表空间&#xff1a;又称为用户表空间&#xff0c;用来存放永久数据(不删除永久存在)(3)日志表空间&#xff1a;用来存放日志信息一般情况下&#xff0c;用户使用时只需要创建数据表空间即可&#xff0c;根…

POJ1022 Packing Unit 4D Cubes

题目来源&#xff1a;http://poj.org/problem?id1022 题目大意&#xff1a; 有一些4维的单位体积的立方体盒子&#xff0c;每个立方体有8个面。要用一个大的4为盒子将它们包起来&#xff0c;求最小的大盒子体积。 输入&#xff1a;第一行为测试用例数。每个用例的第一行为单位…

中国电子学会青少年编程能力等级测试图形化三级编程题:海底寻宝

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

用Ajax请求服务器的图片,并显示在浏览器中(转)

前言 一直在数据库里面存的都是图片在服务器的地址&#xff0c;然后再到浏览器中显示&#xff0c;但是发现两个问题 第一&#xff1a;为了安全起见&#xff0c;js是无法读取本地的图片的&#xff0c;不然你写一个js&#xff0c;岂不是可以获取任何人电脑里面的文件了。 第二&am…

pb设置Oracle事务的隔离级别,Oracle的事务隔离级别

ANSI/ISO SQL规定了四种事务隔离级别&#xff0c;分别是&#xff1a;read uncommitted,read committed,repeatable read,serializableORACE提供了SQ92标准中的read committed和seriaizabe&#xff0c;同时提供了非SQ92标准的read-ony。read committed&#xff1a;这是ORACE缺省…

inux php pdo mysql 扩展

今天在本机部署了一个pdo项目&#xff0c;发现一些问题&#xff0c;真没想到pdo mysql&#xff0c;不容易装啊&#xff0c;哈哈&#xff0c;我说的不容易&#xff0c;是因为php5.3以前版本&#xff0c;yum源里面根本没有。部署后就报&#xff0c;Undefined class constant MYSQ…

Maven项目Spring Boot启动

1. pom.xml中增加配置 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.0.RELEASE</version></parent><dependencies><dependency><gr…

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

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

Oracle设置date数据比较,ORACLE DATE和TIMESTAMP数据类型的比较

DATE数据类型这个数据类型我们实在是太熟悉了&#xff0c;当我们需要表示日期和时间的话都会想到date类型。它可以存储月&#xff0c;年&#xff0c;日&#xff0c;世纪&#xff0c;时&#xff0c;分和秒。它典型地用来表示什 么时候事情已经发生或将要发生。DATE数据类型的问题…

POJ 1552 Doubles (C++ STL set使用)

题目&#xff1a; 题意&#xff1a;题意&#xff1a;给出几个正数&#xff08;2~15个&#xff09;&#xff0c;然后就是求有这些数字的2倍有没有和原先的正数相同的&#xff0c;求出有几个&#xff0c;没有就是0. 分析&#xff1a;水题。用数组解决&#xff0c;开一个数组存正数…

凌亮:动手学数据分析笔记

凌亮是华北电力大学数理系大二的学生&#xff0c;LSGO软件技术团队&#xff08;Dreamtech算法组&#xff09;成员&#xff0c;参加了多期Datawhale的组队学习。 这篇图文是他在线下组队学习时&#xff0c;为大家分享自己学习“动手学数据分析”的笔记。 希望参与我们线下组队…

【H.264/AVC视频编解码技术详解】十九:熵编码算法(5)——H.264的CABAC(上):语法元素的二值化方法...

《H.264/AVC视频编解码技术详解》视频教程已经在“CSDN学院”上线&#xff0c;视频中详述了H.264的背景、标准协议和实现&#xff0c;并通过一个实战工程的形式对H.264的标准进行解析和实现&#xff0c;欢迎观看&#xff01; “纸上得来终觉浅&#xff0c;绝知此事要躬行”&…

oracle anbob,Tag Archives: oracle安装 | ANBOB

2016/08/02363 viewsUsing ‘opatch lsinventory’ show patched is real? (看到的补丁信息真的靠谱么&#xff1f;)已关闭评论去年在排查SCN 天花板问题修改相关的几个参数时&#xff0c;发现了这个问题&#xff0c;尤其如果是从别人手中接手的数据库&#xff0c;通常从opatc…

Python之装饰器

Python之装饰器 在不修改函数调用方式的前提下&#xff0c;也不能修改函数内部源代码&#xff01;&#xff01;&#xff01;&#xff01; 例如&#xff1a; 在每个季度公司发绩效&#xff0c;统计每个人的代码执行效率。咱们总不能是每个函数里加time模块吧。 import timedef t…

Datawhale组队学习周报(第041周)

本周报总结了从 11月22日至11月28日&#xff0c;Datawhale组队学习的运行情况&#xff0c;我们一直秉承“与学习者一起成长的理念”&#xff0c;希望这个活动能够让更多的学习者受益。 第 31 期组队学习已经与大家见面了&#xff0c;这次组队学习一共 11 门开源课程&#xff0…

Redis介绍

redis是一个key-value存储系统。和Memcached类似&#xff0c;但是解决了断电后数据完全丢失的情况&#xff0c;它支持存储的value类型相对更多&#xff0c;包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hashs&#xff08;哈希类型&#xff09;。这…

oracle精度制的数据类型,ORACLE 中NUMBER 类型 低精度转换成高精度

Node&period;js的函数返回值先看一段代码: function select(sqlscript){ var result ""; sql.connect(config, function( ...LeetCode Range Sum Query 2D - Mutable原题链接在这里:https://leetcode.com/problems/range-sum-query-2d-mutable/ 题目: G…

cacti监控linux和windows磁盘IO

cacti监控linux和windows磁盘IO 标签&#xff1a;cacti linux磁盘IO windows磁盘IO原创作品&#xff0c;允许转载&#xff0c;转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://charlie928.blog.51cto.com/3741218/1331780一&#x…

2021 线性代数 第三章 习题课

第3章 向量空间 3.1 基本概念&#xff08;基础部分&#xff09;3.1 基本概念&#xff08;提高部分&#xff09; -> 插入视频 3.2 线性相关、线性无关&#xff08;基础部分&#xff09;3.2 线性相关、线性无关&#xff08;提高部分&#xff09;3.3 向量空间的基与维数、坐…

MYSQL修改配置,允许远程访问

1、 mysql -h localhost -u root //这样应该可以进入MySQL服务器 2、 GRANT ALL PRIVILEGES ON *.* TO root% WITH GRANT OPTION //赋予任何主机访问数据的权限 如果需要密码&#xff1a; GRANT ALL PRIVILEGES ON *.* TO roo…

ckeditor finder php,CKEDITOR CKFINDER的图片上传配置(C#/asp.net/php)

CKEDITORCKFINDER的图片上传配置(C#/asp教程.net/php教程)phpkeditor的代码全部重写&#xff0c;但里面没有了上传功能&#xff0c;只是一个纯粹的文件在线编辑器&#xff0c;如果需要上传图片&#xff0c;还需要下载ckfinder。首先去官方上下载源代码&#xff0c;然后分别解压…

Linux 常用命令——df, du, ln

1. df 列出文件系统的整体磁盘使用量 2. du 评估文件系统的磁盘使用量(常用在推估目录所占容量)&#xff0c;也可以计算文件或文件夹大小 3. ln 创建实体连接(hard link) 或 符号连接(Symbolic Link) 转载于:https://www.cnblogs.com/bigben0123/p/3238199.html

nio selector

为什么使用Selector? 仅用单个线程来处理多个Channels的好处是&#xff0c;只需要更少的线程来处理通道。事实上&#xff0c;可以只用一个线程处理所有的通道。对于操作系统来说&#xff0c;线程之间上下文切换的开销很大&#xff0c;而且每个线程都要占用系统的一些资源&…

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

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

linux查找以h结尾的文件,【linux_笔记】Linux_文件查找(find)详解特殊权限

学习记录过程中难免出现错误&#xff0c;如有发现&#xff0c;还望大神们指出。示例操作部分有的与历史操作有关&#xff0c;如果先前的示例操作没有执行过的话&#xff0c;可能会有部分示例的操作无法执行。示例仅供参考(练习题在附录)。文件查找&#xff1a;locate(不常用):非…

AngulerJS学习(五)按需动态载入文件

在此之前我么年首先要先了解几个东西&#xff1a; $q 简单介绍&#xff1a; $q&#xff1a;主要解决的是异步编程的问题&#xff0c;是指描写叙述通过一个承诺行为与对象代表的异步运行的行动结果的交互。可能会也可能不会再不论什么时候完毕。 我们通过一个小故事理解 $q 服务…

【青少年编程竞赛交流】11月份微信图文索引

11月份微信图文索引 由于“组队学习”这个公众号的功能主要是组织Datawhale社群中的学习者们每个月的组队学习&#xff0c;所以&#xff0c;我另外新建了这个微信公众号“青少年编程竞赛交流”&#xff0c;在这个公众号上分享有关青少年编程方面的知识&#xff0c;以及通过编程…

linux内核创建节点,Linux内核驱动自动创建设备节点文件

Linux下生成驱动设备节点文件的方法有3个&#xff1a;1、手动mknod&#xff1b;2、利用devfs&#xff1b;3、利用udev在刚开始写Linux设备驱动程序的时候&#xff0c;很多时候都是利用mknod命令手动创建设备节点&#xff0c;实际上Linux内核为我们提供了一组函数&#xff0c;可…

javascript publish/subscribe or observer pattern

定义 定义一对多的对象封装&#xff0c;目标对象状态发生变化&#xff0c;它所有的接受者都会收到通知并做相应的更新。 使用频率&#xff1a;5/5 最高 概要 观察者模式&#xff0c;也就是发布者/订阅者模式&#xff0c;当发布者发布一个通知的时候&#xff0c;订阅者就会收到通…