python函数课后练习
1、定义一个getMax函数,返回三个数(从键盘输入的三个数)的最大值
def getMax():
x=int(input("请输入第一个整数:"))
y=int(input("请输入第二个整数:"))
z=int(input("请输入第三个整数:"))
t=0
if x>y:
t=a
else :
t=y
if t>z:
return t
else:
return z
maxValue=getMax()
print(maxValue)
2、编写函数,求出“1/(12)-1/(23)+1/(34)-1/(45)-1/(n*(n+1))",前n项的和,函数以n为参数,他是用户输入的
def add(n):
i=0
while n>=1:
if n%2==0:
i=i-1.0/(n*(n+1))
else:
i = i + 1.0 / (n * (n + 1))
n=n-1
return i
num=int(input("请输入一个整数:"))
print(add(num))
3、回文数是一个正向和逆向都相同的数,编写一个程序,判断一个数是否是回文数
a=int(input("请输入任意一个数:"))
a=str(a)
b=a[::-1]
if(a==b):
print("是回文数!")
else:
print("不是回文数!")
4、编写函数,判断输入的三个数是否能够成三角形的三条边
def func(x, y, z):
if (x + y > z and z + y > x and x + z > y):
return "能构成三角形"
else:
return "不能构成三角形"
result1 = func(3, 4, 5)
print(result1)
result2 = func(2, 4, 2)
print(result2)
5、编写函数,求两个正整数的最小公倍数
思路:首先比较两个数的大小,找出大的那个数,再用大的那个数的倍数,从小到大,开始尝试整除小一点的那个数,整除成功时大的那个数的倍数,就是两个数的最小公倍数。
def func(a,b):
if a>b:
bigger=a
smaller=b
else:
bigger=b
smaller=a
i=1
while True:
if (bigger*i)%smaller==0:
print("最小公倍数为:",(bigger*i))
break
i=i+1
a=int(input("请输入第一个数:"))
b=int(input("请输入第二个数:"))
func(a,b)
6、已知有个列表[1,2,3,4,5],让列表的每个元素加1,把结果不能被2整除的元素筛选出来
a=[1,2,3,4,5]
b=list(map(lambda x:(x+1)%2,a))
print(b)