我随便做的几道python题目
ok 先审题第一题分子都是一分母123456789...
我有一计,就是123456789...的负一次方相加就能搞定这题!我真是太聪明了
幂次方学过math.pow(a,b)=a的b次方ok开写
"""
import math#导入这玩意才能用幂次方
def sum2(n):#搞个函数传入n
b=0#b一会要累加得和初始值因该要是0
for i in range(1,n+1):#循环次数为n次
b+=math.pow(i,-1)#i的负一次方累加求和
return b#循环执行n次返回最终和值b
print(sum2(100))#调用函数,题目要求是到100
#嗯看着就知道没问题
"""
后面看姓豆的包是下面这样写的,更加感觉我有点聪明...我就不解释它的了
"""
def sum(n):
a=0
for i in range(1,n+1):
a+=1/i
return a
print(sum(100))
"""
没问题那就第二个问题第二题
往上看题
发现跟第一题的差别就是分母为偶的为负,求和时加个判断就是,是偶分母的话给乘个负一就行,开搞
"""
def sum(n):
a=0
for i in range(1,n+1):
if i%2==0:#判断分母i若为偶数取余则为0
a+=(-1)/i
else:
a+=1/i
return a
print(sum(3))
"""
哎,下一个下一个
第三题
发现分母是累加,先看个我脑海里想到的一个公式
看不懂的找一下自己有没有高中毕业证
ok那么开搞
"""
def sum(n):
a=0
for i in range(1,n+1):
a+=1/(i*i/2+i/2)#公式好像有点小变形
return a
print(sum(2))
"""
行
下一个四
发现2+22+222+2222=(2*1)+(2*10+2*1)+(2*100+2*10*2*1)+(2*1000+2*100+2*10+2*1)...=2*(1+11+111+1111+11111)
import math 导到你脑子里
于是你就能想到n个1=[math.pow(10,k)-1]/9
ok好办开搞
"""
import math
def sum(a,n):
return a/9*10*(math.pow(10,n)-1)/9-a/9*n#代码里的确实要拆开变动一下计算顺序我觉得才好看
print(sum(2,3))
"""
搞定
五
"""
import math
def jie(n):#这个用来算分母
res=1
for i in range(1,n+1):
res*=i
return res
def aa():
e=0#最终求和值开始为0
i=0#循环计次数的i开始为0
while True:
t=1/jie(i)
if (t<math.pow(10,-6)):
break#满足条件退出循环
e+=t
i+=1
return e
print(aa())
"""
没多少思路找姓豆的包谈了好久
行
六,纯手戳
"""
import math
def sum(n):
a=0
b=0
for i in range(0,n):#这个计算分母为An=1+4*n的和
a+=math.pow(1+i*4,-1)
for i in range(0,n):
b+=math.pow(3+i*4,-1)#这个计算分母为An=3+4*n的和
return (a-b)*4#自己想想这是干嘛
print(sum(2))
"""
懒得去验算了,
ok
