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

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

  • 2026-10-14 17:59:26
【第36期】21天养成编程习惯:Python刷题第08天

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

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

Day08:CIE一级2025.06_编程题36

小明去超市买了苹果和香蕉,苹果每斤6.5元,香蕉每斤4.8元。小明买了斤苹果和斤香蕉(和都是不是0的整数),请写一段程序计算小明一共需要支付多少钱?

要求:

(1)程序开始运行后,需要用户输入和的值(整数),可以分两次输入;

(2)用户输入斤数时,要有提示语,提示语分别为:“请输入苹果斤数:”、 “请输入香蕉斤数:”;

(3)计算公式正确,正确实现总费用的计算逻辑;

(4)输出格式正确,输出字符串包含提示文本,如“小明一共需要支付:”,“元”;

(5)代码规范,运行正常。

友情提示:

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

参考程序:

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

# 1. 输入数据:分两次输入,并转换为整数apple_weight = int(input("请输入苹果斤数:"))banana_weight = int(input("请输入香蕉斤数:"))# 2. 处理数据:根据单价和重量计算总价total_cost = apple_weight * 6.5 + banana_weight * 4.8# 3. 输出结果:注意输出格式的拼接print(f"小明一共需要支付:{total_cost}元")

Day08:CIE二级2023.05_体重比较器

要求:请编程实现如下功能:

(1)程序开始运行时,提醒用户输入三个人的名字和体重(可以分开输入,每次输入名字或者体重);

(2)程序自动比较,找出最重的一个人的名字和体重;

(3)输出的格式不限,但是要有最重人的姓名和体重信息。

参考程序:

方法一:

w1 = int(input("请输入第一个人的体重:"))n1 = input("请输入第一个人的名字:")w2 = int(input("请输入第二个人的体重:"))n2 = input("请输入第二个人的名字:")w3 = int(input("请输入第三个人的体重:"))n3 = input("请输入第三个人的名字:")maximum = w1m_name = n1if w2 > maximum:    maximum = w2    m_name = n2if w3 > maximum:    maximum = w3    m_name = n3print("体重最重的人是:", m_name)print("他的体重是:", maximum)

方法二:

name = []weight = []for i in range(3):    a = input('请输入姓名:')    b = int(input('请输入体重:'))    name.append(a)    weight.append(b)c = max(weight)d = weight.index(c)print("体重最重的人是:", name[d])print("他的体重是:", c)

方法三:

lst = []for i in range(3):    a, b = input('请输入第' + str(i + 1) + '个人的名字和体重,用逗号隔开').split(",")    lst.append((a, int(b)))max_weight = lst[0][1]max_index = 0for i in range(1, 3):if lst[i][1] > max_weight:        max_weight = lst[i][1]        max_index = iprint("体重最重的人是:", lst[max_index][0])print("他的体重是:", lst[max_index][1])

Day08:CIE三级2022.12_编程题38

输入一个正数,以下代码编程求出它的平方根。请你补全代码。

in_var = float(input("请输入一个需要开方的正数,可以使用2位小数:\n x = "))if in_var < 0:    x = - in_varelse:    x = in_varlow = 0.0high = xs_root = ____①____if x > 0and x < 1:    high = 1.0    low = 0    s_root = ____②____if x >= 0:while abs(____③____) > 0.0001:if x > 1.0:if s_root ** 2 < x:                low = s_rootelse:                high = s_root            s_root = ____④____if x == 1.0and x == 0.0:            s_root = xelse:if s_root ** 2 < x:                low = s_rootelse:                high = s_root            s_root = ____⑤____if in_var >= 0:    print("所求数的平方根为:s_root = %.1f" % (s_root))

参考答案:

① (low + high) / 2;

② (low + high) / 2;

③ s_root ** 2 - x;

④ (low + high) / 2;

⑤ (low + high) / 2。


Day08:CIE四级2023.12_数学证明问题

上世纪中期,校园里流行一种数学游戏,其规则十分简单:任意取一个自然数,若它是奇数,则把它乘以3加上1,若它是偶数,则除以2。按此规则进行下去,经过若干步的计算就能得到自然数1。这个数学现象至今都没有得到完全的证明,但是可以编程来验证它的正确性。

实现上述功能的部分程序代码如下,请补充完成空白处的内容。

step = 1midlist = []defsubwork(n):global stepif n == 1:return stepelif n % 2 == 0:        n = _____①_____        midlist.append(n)        step += 1        subwork(_____②_____)return stepelif n % 2 != 0:        n = _____③_____        midlist._____④_____        step += 1        subwork(_____⑤_____)return stepcur_num = int(input("请输入一个数字:"))subwork(cur_num)print(midlist)print(step)

参考答案:

① n // 2或等效答案

② n或等效答案

③ n * 3 + 1或等效答案

④ append(n)或等效答案

⑤ n或等效答案


青少年编程竞赛交流

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

最新文章

随机文章