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

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

  • 2026-09-26 17:50:35
【第36期】21天养成编程习惯:Python刷题第21天

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

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

Day21:CIE一级2023.05_正方形面积和周长计算

要求:

(1)程序开始运行后,输入一个正方形的边长(整数);

(2)程序会根据输入的边长数值,输出这个正方形所对应的周长和面积的值,并且注明哪个是周长,哪个是面积。

参考程序:

a = int(input('请输入正方形的边长'))print("正方形的周长是:", 4 * a)print("正方形的面积是:", a * a)

Day21:CIE二级2022.06_编程题36

学过编程的小程同学想帮助医生对核酸检测人群进行分流和统计,根据健康码的颜色分配不同的核酸检测区域:

  • 红码:A区
  • 橙码:B区
  • 绿码:C区

等待核酸检测人数众多,但是具体检测人数未知,请你帮小程编写一个程序来协助医生对核酸人群进行人群分流并统计人数。

要求如下:

(1)字母R代表红码,字母Y代表黄码,G代表绿码:

(2)程序运行后根据提示信息输入一个健康码(R、Y、G中之一),输入其他字母提示“输入错误请重新输入”;根据不同的健康码,自动返回区域信息:(红码:A区、橙码:B区、绿码:C区);

(3)程序一直在重复运行,但当输入“end”表示检测结束,输出下面信息(见要求4)后程序结束运行;

(4)检测结束后输出总人数和对应红码、黄码和绿码的人数。

运行案例如下:

> 输入样例1:> R> 输出样例1:> 请到A区检测> > 输入样例2:> Y> 输出样例2:> 请到B区检测> > 输入样例3:> G> 输出样例3:> 请到C区检测> > 输入样例4:> end> 输出样例4:> 检测结束,一共检测*人> 红码:*人> 黄码:*人> 绿码:*人> > (说明:*代表实际统计的的数字)

参考程序:

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

total, r, y, g = 0, 0, 0, 0whileTrue:    code = input("输入一个健康码(R,Y,G):")if code == "end":breakif code == 'R':        r += 1        print("请到A区检测")elif code == "Y":        y += 1        print("请到B区检测")elif code == 'G':        g += 1        print("请到C区检测")else:        print("输入错误请重新输入")continue    total += 1print(f"检测结束,一共检测{total}人")print(f"红码:{r}人")print(f"黄码:{y}人")print(f"绿码:{g}人")

Day21:CIE三级2022.12_编程题36

下面程序实现对二维数据的处理,请你补全代码。

f = open('/data/score2.csv', 'r')a = []for i in f:    print(i.strip())    a.append(i.strip().split(','))f.close()____①____for i in a:    s = ''for j in i:        ____②____    print(s)

程序执行结果为:

[['王鑫', '86', '90', '92', '99', '94', '95'], ['杨小虹', '93', '97', '95', '90','86', '85'], ['李静', '89', '98', '99', '94', '90', '85']]王鑫    	86    	90    	92    	99    	94    	95    	杨小虹   	93    	97    	95    	90    	86    	85    	李静    	89    	98    	99    	94    	90    	85    	

参考答案:

① print(a,'\n')或等效答案;

② s += '{:6}\t'.format(j)或等效答案。


Day21:CIE四级2023.03_第37题

一张长方形的纸,长m米,宽n米(长宽均为整数),现在要把它刚好裁成一些正方形(边长是整数),有几种裁法,如果要使裁得的正方形面积最大,可以裁多少块。小明学习了递归后,编写程序如下,首先输入长方形的长和宽,计算出结果。请完善划线处的代码:

deftj(a, b):    c = 0    minn = _____①_____ if a > b:        minn = bfor i in range(1, minn + 1):if a % i == 0and b % i == 0:            c = _____②_____return cdefgcd(a, b):if b == 0:return areturn _____③_____chang = int(input('输入长方形的长 (单位cm)'))kuan = int(input('输入长方形的宽 (单位cm)'))bianchang = gcd(chang, kuan)total = _____④_____num = tj(chang, kuan)print('------------结果如下-------------')print('有{}种裁法'.format(num))print('裁得的正方形面积最大边长是{}cm,可以裁{}块'.format(bianchang, total))

运行后的结果如下所示:

输入长方形的长 (单位cm) 24输入长方形的宽 (单位cm) 16------------结果如下-------------有4种裁法裁得的正方形面积最大边长是8cm,可以裁6块

参考答案:

① a

② c + 1

③ gcd(b, a % b)

④ (chang // bianchang) * (kuan // bianchang)


青少年编程竞赛交流

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

最新文章

随机文章