**
Python 函数的设计和使用
**
实验目的
1掌握Python变量作用范围
2掌握Python函数的定义方法
3掌握递归函数的编写方法
实验内容:
1定义一个简单数据类型全局变量在函数中修改该变量的值打印该变量观察其变化情况,再定义一个列表类型全局变量,在函数中修改该列表全局变量的值。打印该变量,观察其变化情况,思考如何才能在函数中正常使用函数变量
2编写一个函数输入一个正整数如果是质数就返回true 否则就返回false
3编写一个函数输入年份判断这一年是否为闰年
4查询汉诺塔问题并利用递归思维编写汉诺塔程序
1定义一个简单数据类型全局变量在函数中修改该变量的值打印该变量观察其变化情况,再定义一个列表类型全局变量,在函数中修改该列表全局变量的值。打印该变量,观察其变化情况,思考如何才能在函数中正常使用函数变量
n=1
def func(a,b):
global n
n=b
return a*b
s=func("knock-",2)
print(s,n)
ls=[]
def func(a,b):
ls.append(b)
return a*b
s=func("knock-",2)
print(s,ls)
2编写一个函数输入一个正整数如果是质数就返回true 否则就返回false
def f(n):
if n<2 or n==4:
return False
elif n==2 or n==3 or n==5:
return True
for i in range(2,int(n/2)+1):
if n%i==0:
return False
return True
n=int(input("请输入一个数字:"))
if f(n):
print("是质数")
else:
print("不是质数")
3编写一个函数输入年份判断这一年是否为闰年
year=eval(input("请输入年份:"))
def shu(year):
year = int(year)
if year % 400 == 0:
print('{}是世纪闰年'.format(year))
elif year % 4 == 0 and year % 100 != 0:
print('{}是普通闰年'.format(year))
else:
print('{}不是闰年'.format(year))
print(shu(year))
4查询汉诺塔问题并利用递归思维编写汉诺塔程序
def hanoi(n,x,y,z):
if n==1:
print(x,"-->",z)
else:
hanoi(n-1,x,z,y)
print(x,"-->",y)
hanoi(n-1,y,x,z)
while True:
n=int(input("请输入汉诺塔的层数:"))
hanoi(n,"x","y","z")