函数封装的应用

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

# 输入一个要扩展计算的正整数
var1=int(input("请输入一个1-9的整数:"))
# 输入扩展的最大位数
var2=int(input("请输入一个正整数:"))
# 变量求和
sum1=0
# 用变量来储存扩展位数
b=var2
# range(1,5+1)来计算出2,22,222,2222,22222
for i in range(1,b+1):
    # 先把5传入函数中
    def func(var2):
        # 判断,如果为0则全部为0
        if var2==0:
            return 0
        return var1*10**(var2-1)+func(var2-1)
    # 将每一个拓展数字相加
    sum1+=func(var2)
    # var2位数顺序为5,4,3,2,1,
    var2=var2-1
print(sum1)

结果:

请输入一个1-9的整数:2
请输入一个正整数:5
24690

2 .判断某个数是否是素数,返回结果
  质数又称为素数。指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。否则被称为合数。

# 输入一个值
num=int(input("请输入一个正整数:"))
# 先对1进行简单判断
if num<2:
    print("这个数不是素数")
else:
    # 再对2以后的数字进行判断
    for i in range(2,num):
        if num%i==0:
            print("这个数不是素数")
            break
        else:
            print("这个数是素数")

或者:

# 输入一个值
num=int(input("请输入一个正整数:"))
# 质数均为大于1的数
if num>1:
    for i in range(2,num):
        if num%i==0:
            print(num,"不是质数")
            print(i,"乘于",num//i,"是",num)
            break
        else:
            print(num,"是质数")
# 输入数字小于1时不是质数
else:
    print(num,"不是质数")

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

num=[]
# 对于素数的判断
for a in range(2,100):
   if a<2:
       continue
   for b in range(2,a):
      if(a%b==0):
         break
   else:
      num.append(a)
#下面的print可有可无
print(num)
# 求和
sum=0
for i in num:
    sum+=i
print(sum)

结果:

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
1060

4.交换两个变量的值
方法一(python特有方法):

def dome(a,b):
    a,b=b,a
print(a,b)

方法二(通用方法):

def dome(a,b):
    n=a
    a=b
    b=n
print(a,b)

简单举例:

a=1
b=2
a,b=b,a
print(a,b)

结果:

2 1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值