当前位置: 代码迷 >> 综合 >> Python之函数的练习一(定义函数:计算某个数以内所有奇数和,判断偶数,素数及个数,比较大小,阶乘,交换两个变量值,输入2,5:实现2+22+222+2222+22222之和)
  详细解决方案

Python之函数的练习一(定义函数:计算某个数以内所有奇数和,判断偶数,素数及个数,比较大小,阶乘,交换两个变量值,输入2,5:实现2+22+222+2222+22222之和)

热度:27   发布时间:2023-12-16 19:16:08.0

初级
定义函数实现下面的操作
1.计算从1到某个数以内所有奇数的和并返回

def SumOod(a):sum = 0for i in range(a):if i / 2 != 0:sum += ireturn sumnum = int(input("请输入一个大于1的整数:"))
print(SumOod(num))

2.判断某个数是否是偶数,返回结果

def isEven(a):if a % 2 == 0:return(a)a = int(input("请输入一个整数:"))
print("%d是偶数"%isEven(a))

3.判断某个数是否是素数,返回结果

def isPrime(a):n = aif n < 2:return 0else:for i in range(2,n):if n % i == 0:return 0 return 1a = int(input("请输入一个整数:"))
num = isPrime(a)
if num == 1:print("%d是素数"%a)

4.计算2-某个数之间素数的个数,返回结果

def SumPrime(a):n = acount = 0for n in range(2,a):if n < 2:count += 0else:for i in range(2,n):if n % i == 0:count += 0count += 1return counta = int(input("请输入一个大于2的整数:"))
num = SumPrime(a)
print("%d以内的素数有:%d个"%(a,num))

中级

1.比较某两个数的大小,返回较大的一个

def Compare(num1,num2):if num1 > num2:return num1else:return num2num1 = int(input(("请输入数字1:")))
num2 = int(input(("请输入数字2:")))
print(Compare(num1,num2))

2.使用递归实现:计算某个数的阶乘

def jiecheng(a):num = 1while(a):num *=aa -= 1return numa = int(input("请输入一个整数:"))
print("%d的阶乘是:%d"%(a,jiecheng(a)))

3.交换某两个变量的值

def Swap(a,b):temp = aa = bb = tempreturn a,b
num1 = int(input(("请输入数字1:")))
num2 = int(input(("请输入数字2:")))
print("交换顺序前a:%d b:%d"%(num1,num2))
print("交换顺序后a:%d b:%d"%(Swap(num1,num2)))

高级

1.定义函数实现如下要求
    例如:输入2,5,则求2+22+222+2222+22222的和

def fun1(a,b):sum = 0b = int(b)while(b):c = int(a*b)sum += cb -= 1return suma = input(("请输入一个整数:"))
b = input(("请输入一个整数:"))
print(fun1(a,b))

2. 使用递归实现:计算某个数的阶乘

def jiecheng(num):if num == 1:return 1else:return jiecheng(num-1) * numprint(jiecheng(5))