第1关:函数的参数 - 搭建函数房子的砖
本关的编程任务是补全src/Step1/plus.py
文件的代码,实现相应的功能。具体要求如下:
- 定义并调用一个函数,功能是对输入的列表中的数值元素进行累加,列表中元素的个数没有确定;
- 将累加结果存储到变量
d
中; - 输出累加结果
d
。
def count():
d = 0
for n in range(len(numbers)):
d += numbers[n]
return d
d = count()
第2关:函数的返回值 - 可有可无的 return
本关的编程任务是补全src/step2/return.py
文件的代码,实现相应的功能。具体要求如下:
- 定义一个函数
gcd
,功能是求两个正整数的最大公约数; - 调用函数
gcd
,得到输入的两个正整数的最大公约数,并输出这个最大公约数。
def gcd(a,b):
num = 1
for i in range(2,(a if a>=b else b) + 1):
if a%i==0 and b%i==0:
num = i
return num
第3关:函数的使用范围:Python 作用域
本关的编程任务是补全src/step3/scope.py
文件的代码,实现相应的功能。具体要求如下:
- 编写程序,功能是求两个正整数的最小公倍数;
- 要求实现方法:先定义一个
private
函数_gcd()
求两个正整数的最大公约数,再定义public
函数lcm()
调用_gcd()
函数求两个正整数的最小公倍数; - 调用函数
lcm()
,并将输入的两个正整数的最小公倍数输出。
def _gcd(a,b):
num = 1
for i in range(2,(a if a>=b else b) + 1):
if a%i==0 and b%i==0:
num = i
return num
def lcm(a,b):
return a*b//_gcd(a,b)