涉及考试:计算机学会编程能力等级认证(GESP)、电子学会等级考试 活动内容:提供不同等级的真题供小朋友们选择练习 备考建议:根据自己备考的等级选择相应题目 附加价值:可作为白名单比赛的备考训练 本月打卡:七月CIE_Python打卡题目
2023年“科学T大会”将在上海举行,某同学在学习科学知识时,了解到云也是重要的气象要素之一,天空中云的多少叫作云量,如果把天空看成一个圆,把这个圆平均分成四份,我们就可以按照云在天空中所占的面积来划分云量。由①到②的云量变化为晴天,由②到③的云量变化为多云,有③到④的云量变化为阴天。

这位同学想请你帮助他绘制晴天中的①号图形(注意:是完全没有黑色区域的晴天),绘制要求及图形如下:
(1)图形由一个黑色的圆组成;
(2)圆由水平方向的直径与垂直方向相交分成相等的4份;
(3)圆的圆心坐标为,半径为50;
(4)绘制完成后,小海龟需隐藏。

友情提示:
考试平台暂不支持画笔命名:Pen()命令,同学们可以选用其他命令;当然如果使用了Pen()命令,只要程序是正确的,阅卷时依然按照正确处理。
参考程序:
import turtle
turtle.pencolor('black')
turtle.penup()
turtle.goto(0, -50)
turtle.pendown()
turtle.circle(50)
turtle.goto(0, 50)
turtle.penup()
turtle.goto(-50, 0)
turtle.pendown()
turtle.goto(50, 0)
turtle.hideturtle()
turtle.done()
日期转换
编写一个程序,实现用户输入一个日期,格式为"月/日/年",如输入'05/21/2021',程序输出日期为'May 21,2021'。
1至12月的英文名称如下:
January,February,March,April,May,June,July,August,September,October,November,December。
参考程序:
说明:程序仅供参考,考生可以有多种解决方法。
date = input('输入一个日期(月/日/年):')
month, day, year = tuple(date.split('/'))
dic = {1: 'January', 2: 'February', 3: 'March', 4: 'April', 5: 'May',
6: 'June', 7: 'July', 8: 'August', 9: 'September',
10: 'October', 11: 'November', 12: 'December'}
print(f'{dic[int(month)]}{day},{year}')
请读取文件"cj.csv"的数据,数据内容如下图所示:

下列代码实现了读取“姓名”和“体质测试”信息,输出“体质测试”考核为A的数量(大于等于85分)并显示相应同学姓名,请你补全代码。
import csv
with open('cj.csv') as f:
rows = list(__①___)
n = 0
for row in rows[1:]:
if __②___:
print(row[0])
n += 1
print(n)
参考答案:
① csv.reader(f)
② int(row[1]) >= 85
将大写字母逐个按其ASCII值转换为7位二进制数,并在最左边补0,使得每个字母转换为8位二进制数,然后将8位二进制数每四位转为十六进制数。
如明文是"CIE",加密后的密文是"434945"。编写的python程序如下,完善划线处的代码。
defxtob(n):
if n <= 1:
return str(n)
return xtob(n // 2) + _____①_____
mingwen = "CIE"
he = "0123456789ABCDEF"
rst = ""
for c in mingwen:
s = "0" + xtob(ord(c))
i = 0
data = 0
while i < 8:
data = data * 2 + _____②_____
if (i + 1) % 4 == 0:
rst = rst + he[data]
data = 0
_____③_____
print("密文是:", rst)
参考答案:
① str(n%2)
② int(s[i])
③ i += 1 或 i = i + 1
青少年编程竞赛交流
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),添加小助手微信,让他邀请大家进入学习群。进群之后大家可以参与定期组织的21天刷题打卡、等级考试测评、教育部白名单比赛辅导以及青少年编程组队竞赛等活动。
