第1关:函数的参数 - 搭建函数房子的砖
编程要求
本关的编程任务是补全src/Step1/plus.py
文件的代码,实现相应的功能。具体要求如下:
- 定义并调用一个函数,功能是对输入的列表中的数值元素进行累加,列表中元素的个数没有确定;
- 将累加结果存储到变量
d
中; - 输出累加结果
d
。
本关涉及的src/Step1/plus.py
代码文件的代码框架如下:
# coding=utf-8
# 创建一个空列表numbers
numbers = []
# str用来存储输入的数字字符串,lst1是将输入的字符串用空格分割,存储为列表
str = input()
lst1 = str.split(' ')
# 将输入的数字字符串转换为整型并赋值给numbers列表
for i in range(len(lst1)):
numbers.append(int(lst1.pop()))
# 请在此添加代码,对输入的列表中的数值元素进行累加求和
########## Begin ##########
def plus(numbers):
m = 0
for i in numbers:
m += i
return(m)
d = plus(numbers)
########## End ##########
print(d)
第2关:函数的返回值 - 可有可无的 return
编程要求
本关的编程任务是补全src/step2/return.py
文件的代码,实现相应的功能。具体要求如下:
- 定义一个函数
gcd
,功能是求两个正整数的最大公约数; - 调用函数
gcd
,得到输入的两个正整数的最大公约数,并输出这个最大公约数。
本关涉及的代码文件src/step2/return.py
的代码框架如下:
# coding=utf-8
# 输入两个正整数a,b
a = int(input())
b = int(input())
# 请在此添加代码,求两个正整数的最大公约数
########## Begin ##########
def gcd(a,b):
temp=a%b
while temp !=0:
a=b
b=temp
temp=a%b
return b
########## End ##########
# 调用函数,并输出最大公约数
print(gcd(a,b))
第3关:函数的使用范围:Python 作用域
编程要求
本关的编程任务是补全src/step3/scope.py
文件的代码,实现相应的功能。具体要求如下:
- 编写程序,功能是求两个正整数的最小公倍数;
- 要求实现方法:先定义一个
private
函数_gcd()
求两个正整数的最大公约数,再定义public
函数lcm()
调用_gcd()
函数求两个正整数的最小公倍数; - 调用函数
lcm()
,并将输入的两个正整数的最小公倍数输出。
本关涉及的代码文件src/step3/scope.py
的代码框架如下:
# coding=utf-8
# 输入两个正整数a,b
a = int(input())
b = int(input())
# 请在此添加代码,求两个正整数的最小公倍数
########## Begin ##########
def lcm(a,b):
if a>b:
bigger=a
else:
bigger=b
for i in range(bigger,a*b+1):
if i%a==0 and i%b==0:
lcm=i
return(lcm)
########## End ##########
# 调用函数,并输出a,b的最小公倍数
print(lcm(a,b))
(格式可复制)