涉及考试:计算机学会编程能力等级认证(GESP)、计算机学会编程培训师资认证(PTA)、电子学会等级考试 活动内容:提供不同等级的真题供小朋友们选择练习 备考建议:根据自己备考的等级选择相应题目(备考GESP四级的孩子可选择PTA的题目进行练习) 附加价值:可作为白名单比赛的备考训练 本月打卡:本月打卡题目

(1)删除默认小猫角色。
(2)添加角色Bananas和Beetle。
(3)删除默认白色背景,添加背景Blue Sky 2。
(1)点击绿旗,背景换成Blue Sky 2。
(2)点击绿旗,角色Bananas的初始位置为(X=120,Y=80),大小为80。
(3)点击绿旗,角色Beetle的初始位置为(X=-120,Y=-80),旋转方式为任意旋转。
(4)当按下“↑”“↓”“←”“→”键,角色Beetle面向对应方向前进10步。
(5)当角色Beetle碰到Bananas,Beetle说“香蕉”,离开则不再说“香蕉”。
注意事项:
删除默认小猫角色,添加角色Bananas和Beetle。

删除默认白色背景,添加背景Blue Sky 2。

编程题的功能实现有多种方案,标准答案所示参考程序仅是其中的一种,最终以是否完成题目要求的功能实现效果作为评分依据。

当绿旗被点击时:

当按下向上键时:
当按下向下键时:
当按下向左键时:
当按下向右键时:

当绿旗被点击时:

当绿旗被点击时:


默认小猫角色和白色背景,小明在为自己规划学习时间。现在他想知道两个时刻之间有多少分钟。你能通过编程帮他做到吗?
新建变量“h1”,“m1”,用于记录开始时刻,h1表示小时,m1表示分钟。
新建变量“h2”,“m2”,用于记录结束时刻,h2表示小时,m2表示分钟。
注意:时刻使用24小时制,开始时刻和结束时刻是同一天,开始时刻一定在结束时刻之前。
例如:
h1 = 09,m1 = 05,表示开始时刻为09时05分。
h2 = 09,m2 = 06,表示终止时刻为09时06分。
如下图所示:

新建变量“result”,用于存储得到的结果。即两个时刻之间有多少分钟。上面的例子09时05分到09时06分,之间有1分钟,所以 result = 1。
如下图所示:

【输入样例】
h1 = 09m1 = 05h2 = 09m2 = 06 【输出样例】
result = 1【输入样例】
h1 = 09m1 = 05h2 = 10m2 = 00 【输出样例】
result = 55
一共5组测试用例,通过一组测试用例得5分。
【测试用例1】
h1 = 09;m1 = 05;h2 = 10;m2 = 04result = 59【测试用例2】
h1 = 09;m1 = 05;h2 = 09;m2 = 10result = 5【测试用例3】
h1 = 09;m1 = 55;h2 = 10;m2 = 10result = 15【测试用例4】
h1 = 09;m1 = 55;h2 = 09;m2 = 59result = 4【测试用例5】
h1 = 22;m1 = 37;h2 = 23;m2 = 03result = 26

自幂数是指 位数各位数字次方之和是本身,如153是3位数,其每位数的3次方之和是153本身,因此153是自幂数,1634是4位数,其每位数的4次方之和是1634本身,因此1634是自幂数。(注:5的3次方为;5的4次方为。)
默认小猫角色,白色背景。编写程序判断一个三位的正整数是否为自幂数,如果是自幂数先输出数本身然后紧随T,否则输出数本身然后紧随F。
新建变量“”用于存储一个三位的正整数。
如下图所示:

新建变量“”用于存储判断的结果,如果是自幂数先输出数本身然后紧随T,否则输出数本身然后紧随F。
如下图所示:

【输入样例】
n = 153【输出样例】
result = 153T【输入样例】
n = 152【输出样例】
result = 152F
一共5组测试用例,通过一组测试用例得5分。
【测试用例1】
n = 370;result = 370T【测试用例2】
n = 371;result = 371T【测试用例3】
n = 407;result = 407T【测试用例4】
n = 520;result = 520F【测试用例5】
n = 876;result = 876F

小杨共有 个储蓄罐,编号从 到 。从第 天开始,小杨每天都会往储蓄罐里存钱。具体来说,第 天他会挑选一个储蓄罐 ,并存入 元钱。
默认小猫角色和白色背景。过了 天后,他已经忘记每个储蓄罐里都存入了多少钱了,你能帮帮他吗?
例如:
,表示小杨有个储蓄罐,编号为和;
,表示小杨存了天钱,每天存入钱的储蓄罐的编号存储在列表中, 表示第天向号储蓄罐存入元,第天向号储蓄罐存入元,第天向号储蓄罐存入元。
表示经过天后,号储蓄罐中有元,号储蓄罐中有元。
新建变量,表示小杨有个储蓄罐。
新建列表 存储小杨每天存入钱的储蓄罐编号,天后中有项数据表示第天到第天,存入钱的储蓄罐编号。
如下图所示:

新建列表表示第天后每个储蓄罐中存入的钱数,即有项第项表示编号的储蓄罐存入的钱数,第项表示编号的储蓄罐存入的钱数,,第项表示编号的储蓄罐存入的钱数。 如下图所示:

【输入样例】
N = 2lst = [1, 2, 1]【输出样例】
result = [4, 2]【输入样例】
N = 3lst = [1, 1, 1, 3, 1]【输出样例】
result = [11, 0, 4]
【测试用例1】
输入:N = 1;lst = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]输出:result = [78]【测试用例2】
输入:N = 8;lst = [5, 6, 3, 7, 7, 7, 6, 2]输出:result = [0, 8, 3, 0, 1, 9, 15, 0]【测试用例3】
输入:N = 5;lst = [4, 2, 5, 4, 5, 2, 2, 4]输出:result = [0, 15, 0, 13, 8]【测试用例4】
输入:N = 9;lst = [1, 2, 3, 6, 7, 1, 1, 7, 6, 9, 1, 1, 3, 7, 5, 8, 1, 3, 8, 5, 2, 8, 6, 9, 2, 5, 3, 7, 6]输出:result = [54, 48, 61, 0, 61, 65, 55, 57, 34]【测试用例5】
输入:N = 6;lst = [2, 3, 2, 6, 6, 6, 4, 6, 2, 5, 3, 5, 4, 5, 3, 4, 4, 6, 1, 3, 5, 1, 1, 6, 4, 2, 2, 5, 5, 3, 4, 2, 3, 5, 4]输出:result = [64, 98, 111, 144, 148, 65]在战争时期,我军与敌方进行了激烈的厮杀,为了防止敌方卧底窃取到我方的关键情报,密码战也在战争中被应用起来。
为了提高信息传递的保密性,我军司令提出要不定期更换接头密码,故设计了一套新的解密方式。密码需要将明文和密文的信息结合在一起,才能破译。密文为一串字符。明文为一个两位数,数字中不包含0。
解密方式:明文中第一个数字m, 第二个数字n,代表从密文中第m个字符开始取,取n个字符,这n个字符就是密码。
现在已知明文和密文,请你编写一段程序,破译出密码。
输入一个两位数,存储在变量【明文】中; 输入一个字符串,只含小写字母和数字,代表密文,存储在变量【密文】中。
如下图所示:

输出一个字符串,代表密码,存储在变量【密码】中。
如下图所示:

【输入样例】
56436ddwg79hdw66hg【输出样例】
dwg79h
【测试用例1】
输入:{"明文":56,"密文":["436ddwg79hdw66hg"]}输出:{"密码":["dwg79h"]}【测试用例2】
输入:{"明文":35,"密文":["fdd86dfd7dfs"]}输出:{"密码":["d86df"]}【测试用例3】
输入:{"明文":24,"密文":["fdd83vd7dfs"]}输出:{"密码":["dd83"]}【测试用例4】
输入:{"明文":45,"密文":["fsew234bgf34fs"]}输出:{"密码":["w234b"]}【测试用例5】
输入:{"明文":64,"密文":["s4vgrg65d7dfs"]}输出:{"密码":["g65d"]}【测试用例6】
输入:{"明文":44,"密文":["gtr3j6d7dfs"]}输出:{"密码":["3j6d"]}【测试用例7】
输入:{"明文":83,"密文":["dfaw982kuljs"]}输出:{"密码":["kul"]}【测试用例8】
输入:{"明文":64,"密文":["dku346kj23l78"]}输出:{"密码":["6kj2"]}【测试用例9】
输入:{"明文":75,"密文":["fkudh367gdsdf65"]}输出:{"密码":["67gds"]}【测试用例10】
输入:{"明文":53,"密文":["svkh4r578jks"]}输出:{"密码":["4r5"]}青少年编程竞赛交流
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),添加小助手微信,让他邀请大家进入学习群。进群之后大家可以参与定期组织的21天刷题打卡、等级考试测评、教育部白名单比赛辅导以及青少年编程组队竞赛等活动。
