第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))


 

(格式可复制)

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐