[python][计算方法]利用无穷级数计算幂运算(开根号)

本文详细介绍了几个数学函数的实现,包括指数函数、阶乘函数和幂运算,涵盖了分数、整数等不同类型的输入参数,并提供了具体的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

#encoding=gbk

#a的n次方函数
def exp(a, n):
    ret = 1
    for i in range(0,n):
        ret *= a
    return  float(ret)

#n*(n-1)*(n-2)....
def getN_minus_n(n,x):
    ret = float(1)
    for i in range(0,x):
        n1 = n - i
        ret *= n1

    return float(ret)

#n! 阶乘函数
def multi(x):
    if x == 0:
        return float(1)
    ret = 1
    for i in range(0,x):
        ret *= (i+1)
    return float(ret)


#求x的n次幂,n可以为分数、整数. x必须在0到2之间
def getnum(x, n):
    print  str(x) + "^(" + str(n) + ") = ",
    x = x - 1
    ret = float(1)
    for i in range(1,90):
        ret += getN_minus_n(n,i) * exp(x,i) / multi(i)

    return ret



print getnum(float(0.09), float(2))
print getnum(float(1), float(2))
print getnum(float(0.25), float(2))
print getnum(float(0.09), float(2)/4)
print getnum(float(1), float(2)/4)
print getnum(float(0.25), float(2)/4)

 

 

 

 

 


 

运行结果:

0.09^(2.0) =  0.0081
1.0^(2.0) =  1.0
0.25^(2.0) =  0.0625
0.09^(0.5) =  0.300000658292
1.0^(0.5) =  1.0
0.25^(0.5) =  0.5

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值