image

编辑人: 舍溪插画

calendar2025-06-15

message9

visits847

2023月09月Python二级实操答案及解析

一、编程题

1、36.最小公倍数
最小公倍数是指两个或多个整数公有的倍数中,最小的那个数。例如,2 和 3 的公倍数有 6、12、18 等等,其中最小的是 6,因此 6 就是 2 和 3 的最小公倍数。
最小公倍数在数学中有广泛的应用,例如在分数的化简、约分、比较大小等问题中都需要用到最小公倍数。
请你编写一个程序,程序可以输入两个正整数,输出它们的最小公倍数。
样例输入:
请输入第一个正整数:
6
请输入第二个正整数:
8
样例输出:
24
友情提示:
由于考试平台暂不支持eval()命令,同学们可以选用其他命令;当然如果您使用了,只要程序是正确的,我们阅卷时依然按照正常处理。

参考答案:br />```pythondef lcm(a, b):# 计算最大公约数def gcd(x, y):while y:x, y = y, x % yreturn x# 计算最小公倍数return a * b // gcd(a, b)# 输入num1 = int(input("请输入第一个正整数:"))num2 = int(input("请输入第二个正整数:"))# 输出print("最小公倍数是:", lcm(num1, num2))```

解析:【喵呜刷题小喵解析】

本题要求编写一个程序,输入两个正整数,输出它们的最小公倍数。最小公倍数的定义是两个或多个整数公有的倍数中,最小的那个数。为了求最小公倍数,可以先求两个数的最大公约数,然后用公式“最小公倍数 = 两数之积 ÷ 两数的最大公约数”来求。

首先定义了一个函数`gcd(x, y)`,用于计算两个数的最大公约数。然后定义了一个函数`lcm(a, b)`,用于计算两个数的最小公倍数。在`lcm(a, b)`函数中,先调用`gcd(a, b)`计算最大公约数,然后用公式“最小公倍数 = 两数之积 ÷ 两数的最大公约数”来求最小公倍数。

最后,程序通过`input()`函数获取用户输入的两个正整数,调用`lcm()`函数计算最小公倍数,并通过`print()`函数输出结果。

2、37.中国电子学会主办的“全国青少年信息素养大赛”总决赛要开始了,组委会的老师要统计各个赛项报名的人数。请帮着写一个程序,实现该功能:统计时,输入各项编号表示对应的比赛:
1:Python编程挑战赛
2:开源鸿蒙主题赛
3:智慧物流挑战赛
0:表示录入完毕
要求:
一、循环执行
二、当输入错误数据,可以提示“没有此编号请重复输入”;
三、当输入0后,自动统计所有项目的参赛人数,并输出出来;如下面的案例:
输入样例:
请输入赛项编号:
1
请输入赛项编号:
2
请输入赛项编号:
3
请输入赛项编号:
2
请输入赛项编号:
1
请输入赛项编号:
1
请输入赛项编号:
0
输出样例:
Python编程挑战赛:3人
开源鸿蒙主题赛:2人
智慧物流挑战赛:1人
友情提示:
由于考试平台暂不支持eval()命令,同学们可以选用其他命令;当然如果您使用了,只要程序是正确的,我们阅卷时依然按照正常处理。

参考答案:br />根据题目要求,我们可以使用Python编写一个简单的程序来实现统计各个赛项报名人数的功能。以下是一个可能的实现:```python# 初始化各个赛项的参赛人数为0参赛人数 = '1': 0,'2': 0,'3': 0while True:赛项编号 = input("请输入赛项编号(0表示录入完毕):")if 赛项编号 == '0':breakelif 赛项编号 not in 参赛人数:print("没有此编号,请重复输入")continueelse:参赛人数[赛项编号] += 1# 输出各个赛项的参赛人数for 赛项, 人数 in 参赛人数.items():if 赛项 == '1':print("Python编程挑战赛:人".format(人数))elif 赛项 == '2':print("开源鸿蒙主题赛:人".format(人数))elif 赛项 == '3':print("智慧物流挑战赛:人".format(人数))```

解析:【喵呜刷题小喵解析】

该程序首先初始化了一个字典`参赛人数`,用于存储各个赛项的参赛人数,初始值均为0。

然后程序进入一个无限循环,循环中首先通过`input()`函数提示用户输入赛项编号,如果输入的编号是0,则跳出循环,结束程序的运行。

如果输入的编号不在字典`参赛人数`中,程序会提示用户输入错误的编号,并继续下一次循环。

如果输入的编号在字典`参赛人数`中,程序会将对应赛项的参赛人数加1,并继续下一次循环。

当输入0并跳出循环后,程序会遍历字典`参赛人数`,输出各个赛项的参赛人数。

注意,由于题目要求不能使用`eval()`命令,所以这里使用了`input()`函数来获取用户输入,并使用字符串来进行后续的处理。

喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:2023月09月Python二级实操答案及解析

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share