当前位置:首页>python>【第41期】21天养成编程习惯:Python刷题第12天

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

  • 2026-09-10 23:34:27
【第41期】21天养成编程习惯:Python刷题第12天

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

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

Day12:CIE一级2021.12_编程题36

描述:

假设孩子的身高完全由爸爸和妈妈的遗传因素决定,预测一下长大后孩子的身高是多少?

孩子获得了爸爸妈妈各一半的遗传基因,所以可以用以下公式计算孩子未来的身高。(单位:厘米)

孩子未来的身高=(爸爸的身高+妈妈的身高+13乘以性别系数)/2

如果是“男孩”,性别系数值为“1”;如果是“女孩”,则性别系数值为“-1”。

输入格式:

第一行输入一个数字,代表爸爸的身高第二行输入一个数字,代表妈妈的身高第三行输入一个数字(1或-1),代表性别系数(输入使用input(),并有相应提示信息)

输出格式:

输出孩子未来的身高。(输出使用print(),并有相应提示信息)

参考程序:

注意:仅供参考,画法和顺序,考生可以自行设计,结果符合题意即可。

f = input("请输入爸爸的身高:")m = input("请输入妈妈的身高:")s = input("请输入性别系数:")f = float(f)m = float(m)s = float(s)h = (f + m + 13 * s) / 2print("孩子未来的身高:", h, "(厘米)")

Day12:CIE二级2025.09_编程题36_AI聊天机器人关键词回复系统

在一个简单的 AI 智能聊天机器人场景中,用户会输入一段聊天内容,机器人需要判断用户的意图是否与预设的关键词相关。

预设关键词列表为 ["你好", "再见", "谢谢"](需要在程序中明确预设)。如果用户输入的内容中包含任何一个预设关键词,机器人将按照以下规则做出相应回复:

(1)若包含 “你好”,优先回复 “你好呀!有什么我可以帮忙的?”;

(2)若包含 “再见”(且不包含 “你好”),回复 “再见啦!祝你有个好心情!”;

(3)若包含 “谢谢”(且不包含 “你好” 和 “再见”),回复 “不客气呀!能帮到你我很开心。”;

(4)如果不包含任何关键词,则回复 “不太明白你的意思呢,可以换个说法吗?”。

友情提示:

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

参考程序:

注意:仅供参考,考生可以自行设计,结果符合题意即可。

# 预设关键词列表keywords = ["你好", "再见", "谢谢"]# 获取用户输入user_input = input("请输入聊天内容:")# 根据关键词判断并输出回复if "你好" in user_input:    print("你好呀!有什么我可以帮忙的?")elif "再见" in user_input:    print("再见啦!祝你有个好心情!")elif "谢谢" in user_input:    print("不客气呀!能帮到你我很开心。")else:    print("不太明白你的意思呢,可以换个说法吗?")

Day12:CIE三级2025.09_跳绳抽测

学校某年级跳绳抽测(每个班抽测5名同学)后,老师将有效数据导出为ts.csv文件进行保存,部分数据如图所示,现要编程统计共有多少同学在100个以下,请补全代码:

import csvwith open("/data/ts.csv")as _____①_____:    rs = list(csv.reader(file))    _____②_____for i in rs[1:]:if int(_____③_____) < 100:            c += 1    print("该年级抽测中共有" + str(c) + "人低于100个")

参考答案:

① file 或等效答案;

② c=0 或等效答案;

③[1] 或等效答案。


Day12:CIE四级2023.09_第38题

未来居民社区设计有一个机器人服务中心,假如某社区有若干栋住宅楼,每栋楼的位置可以由坐标表示,其中坐标表示居民楼的东西向位置,坐标表示居民楼的南北向位置。这里约定,社区中任意2点和的之间的距离使用数值来度量。要求为社区选择建立机器人服务中心的最佳位置,使各个居民点到机器人服务中心的距离总和最小。以下是机器人服务中心的选址程序,采用取各坐标中位数的方法来确定中心位置,请补充完成该程序。

n = int(input("请输入居民楼总数:"))hx = []hy = []for i in range(n):    x, y = map(int, input("请输入居民楼的x和y坐标:").split(","))    hx.append(x)    hy.append(y)hx = sorted(_____①_____)  hy = sorted(_____②_____)  if n % 2 == 0:  # 偶数情况,求中位数    sn = int(n / 2)    x0 = int((hx[sn] + hx[sn - 1]) / 2)    y0 = int((hy[sn] + hy[sn - 1]) / 2)else:  # 奇数情况,求中位数    sn = int((n - 1) / 2)    x0 = _____③_____      y0 = _____④_____  sumx = 0sumy = 0for j in hx:    dx = abs(x0 - j)    sumx += dxfor k in hy:    dy = abs(y0 - k)    sumy += dyprint("选址点的坐标是:(%d,%d)" % (x0, y0))print("选址到各楼的累计距离是:", sumx + sumy)

参考答案:

① hx

② hy

③ hx[sn]

④ hy[sn]


青少年编程竞赛交流

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

最新文章

随机文章