当前位置:首页>java>【第36期】21天养成编程习惯:Python刷题第05天

【第36期】21天养成编程习惯:Python刷题第05天

  • 2026-08-25 19:54:18
【第36期】21天养成编程习惯:Python刷题第05天

跟老马一起“升级打怪”学编程!

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

Day05:CIE一级2023.09_编程题37

2023年“科学T大会”将在上海举行,某同学在学习科学知识时,了解到云也是重要的气象要素之一,天空中云的多少叫作云量,如果把天空看成一个圆,把这个圆平均分成四份,我们就可以按照云在天空中所占的面积来划分云量。由①到②的云量变化为晴天,由②到③的云量变化为多云,有③到④的云量变化为阴天。

这位同学想请你帮助他绘制晴天中的①号图形(注意:是完全没有黑色区域的晴天),绘制要求及图形如下:

(1)图形由一个黑色的圆组成;

(2)圆由水平方向的直径与垂直方向相交分成相等的4份;

(3)圆的圆心坐标为,半径为50;

(4)绘制完成后,小海龟需隐藏。

友情提示:

考试平台暂不支持画笔命名:Pen()命令,同学们可以选用其他命令;当然如果使用了Pen()命令,只要程序是正确的,阅卷时依然按照正确处理。

参考程序:

import turtleturtle.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()

Day05:CIE二级2023.12_密码判断

编写一段能够实现密码判断功能的代码。

要求:

(1)程序运行开始后,用户通过键盘输入密码(格式为字符串);

(2)如果密码错误,让用户继续输入密码;

(3)如果密码正确,屏幕输出“密码正确,欢迎您!”,并终止循环,结束程序;

(4)正确的密码可以在程序中明确,无需用户输入。

示例:

如:程序中的密码为:123456  程序运行后提醒用户输入密码,密码错误没有提示,继续要求输入密码,如果密码正确,则屏幕输出“密码正确,欢迎您!”并且结束程序。

友情提示:

由于考试平台暂不支持eval()命令,同学们可以选用其他命令;当然如果您使用了,只要程序是正确的,我们阅卷时依然按照正常处理。

参考程序:

whileTrue:    pwd = input("请输入密码:")if pwd == "123456":breakprint("密码正确,欢迎您!")

Day05:CIE三级2023.12_编程题37

有一个“/data/书籍存单.csv”文件,内容如下图所示。小明编写代码,想查询小说《封神榜》的价格,请补充代码中缺失的部分。

with open('/data/书籍存单.csv', 'r', encoding='utf-8') as f:for line in f.readlines():        a = _____①_____.split(",")if a[0] == "封神榜":            print(_____②_____)

参考答案:

① line或等效答案;

② a[1]或等效答案。


Day05:CIE四级2023.09_第37题

一个列表中存在n个数据,可以用分治算法来找到其中的最小值。具体过程如下:如果列表元素的个数小于等于2的时候,经过一个判断就找到其中的最小值,所以可以先把数据从中间划分为左右两部分,然后通过递归把每一部分再划分为左右两部分,直到数据规模小于等于2的时候,返回结果,然后通过递归到最后为两个数据对比,我们就可以找到最小值。

请根据以上算法过程,补全代码。

# 求列表中小于两个元素的最小值defget_min(number):if len(number) == 1:return _____①_____  else:if number[1] > number[0]:return number[0]else:return number[1]defsolve(number):    n = len(number)if n <= 2:return get_min(number)else:# 将整个列表分为左右两部分        left_list, right_list = _____②_____, number[n // 2:]# 递归(树),分治        left_min, right_min = solve(left_list), _____③_____return get_min([left_min, right_min])test_list = [5, 11, 3, 2, 7, 9]print(solve(test_list))

参考答案:

① number[0]

② number[:n // 2]

③ solve(right_list)


青少年编程竞赛交流

「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),添加小助手微信,让他邀请大家进入学习群。进群之后大家可以参与定期组织的21天刷题打卡、等级考试测评、教育部白名单比赛辅导以及青少年编程组队竞赛等活动。

最新文章

随机文章