z1446773686
发表于 2018-3-4 16:26:34
def F_21(math):
str1 = ''
number = 0
while(math > 0):
number += 1/math
str1 = str(0) + str1 + '+' + '1' + '/' + str(math)
math -= 2
print(str1,'=',number)
while(True):
math = int(input('请输入任意大于零的值:'))
F_21(math)
Even_138
发表于 2018-3-4 16:46:22
{:5_91:}
大头目
发表于 2018-3-7 15:12:46
def e_num_sum(num1):
sum1 = 0
if num1 == 1:
sum1 = 1
elif num1 == 2:
sum1 = 0.5
else:
if num1 % 2: #奇数
for n in range(1,num1+2,2):
sum1 += 1/n
else:
for n in range(2,num1+2,2):
sum1 += 1/n
return sum1
print(e_num_sum(10))
新手潘包邮
发表于 2018-3-16 18:29:19
def clcodd(n):
if n == 1:
return 1
else:
return clcodd(n-2) + 1/n
def clcnum(n):
if n == 2:
return 1/2
else:
return clcnum(n-2) + 1/n
print(clcnum(8))
print(clcodd(9))
新手潘包邮
发表于 2018-3-16 18:32:05
def clc(n):
if n == 1:
return 1
elif n == 2:
return 1/2
else:
return clc(n-2) + 1/n
print(clc(8))
print(clc(9))
checkily
发表于 2018-3-29 23:00:20
冬雪雪冬 发表于 2017-4-1 20:07
太粗心了,重新改过。
你好,你这个写得不对。题目的要求是计算n个分数的和,你这个只能计算n/2个分数的和。即如果n=4,要求计算1/2+1/4+1/6+1/8的和。你的只计算了1/2+1/4的和。所以我把range(n, 0, -2),改成了range(2*n, 0, -2),计算偶数是对了,但计算奇数时,还是错的。我左思右想,没想到怎样改,你有空改一下。
我还是比较low,分开奇偶写:
def even(n):
result = 0
for i in range(1, n+1):
result += 1/(2*i)
print('%s=%.2f' % ('+'.join(['1/'+str(2*i) for i in range(1, n+1)]), result))
def prime(n):
result = 1
for i in range(n):
result += 1/(2*i+1)
print('%s=%.2f' % ('+'.join(['1/'+str(2*i+1) for i in range(n)]), result))
if __name__ == '__main__':
n = int(input('输入一个数:'))
if not n % 2:
even(n)
else:
prime(n)
冬雪雪冬
发表于 2018-3-30 09:38:37
checkily 发表于 2018-3-29 23:00
你好,你这个写得不对。题目的要求是计算n个分数的和,你这个只能计算n/2个分数的和。即如果n=4,要求计 ...
原题目是:
编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n
即最后的数字是1/n,而不是n个数字。
HolaMJ
发表于 2018-3-30 09:42:51
谢谢分享
昔日少年郎
发表于 2018-4-7 20:42:37
看
tsembrace
发表于 2018-4-7 21:20:52
'''
编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n
当输入n为奇数时,调用函数1/1+1/3+...+1/n
'''
def oddadd(n):
k=0
for i in range(1,n+1,2):
k=k+1/i
return k
def evenadd(n):
k=0
for i in range(2,n+1,2):
k=k+1/i
return k
def choiceadd(n):
if n%2==1:
return oddadd
if n%2==0:
return evenadd
def xadd(n):
k=0
while n>=1:
k=k+1/n
n=n-2
return k
print(choiceadd(101)(101))
print(xadd(101))
print(choiceadd(50)(50))
print(xadd(50))
JoyKing
发表于 2018-4-11 20:48:32
def sum1(n):
print(sum(1/i for i in range(n,0,-2)))
JoyKing
发表于 2018-4-11 20:49:04
n=input()
def sum1(n):
print(sum(1/i for i in range(n,0,-2)))
jrro452
发表于 2018-5-2 15:50:35
学习下。
jrro452
发表于 2018-5-2 15:59:32
def macro(x):
if x%2==0:
s=
Sum = sum(s)
else:
s=
Sum = sum(s)
return Sum
if __name__ =='__main__':
Num = int(input('请输入一个不为0的整数:'))
while Num == 0:
Num = int(input('请输入一个不为0的整数:'))
print(macro(Num))
yanchang135
发表于 2018-5-2 16:29:33
def result(n):
if n % 2 == 0:
S = 0
for i in range(1,n + 1):
if i % 2 == 0:
S = S + 1/i
else:
S = 0
for i in range(1,n + 1):
if i % 2 == 1:
S = S + 1/i
return S
today0427
发表于 2018-5-3 20:17:14
来学习
夏未至夜未央
发表于 2018-5-3 20:55:01
def even_cal(x):
if x == 2:
return 1/2
else:
return 1/x + even_cal(x-2)
def odd_cal(x):
if x == 1:
return 1
else:
return 1/x + odd_cal(x-2)
x = int(input('请输入一个数:'))
if x%2 == 0:
#调用偶数计算even_cal
result = even_cal(x)
else:
#调用奇数计算odd_cal
result = odd_cal(x)
print(result)
BISHIQIUQIUI
发表于 2018-5-10 16:31:07
#编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n
def fenshijiafa():
n=int(input("输入一个数为:"))
a=0
if n%2==0:
b=n/2
for i in range(int(b)):
a+=1/n
n=n-2
else:
b=(n+1)/2
for i in range(int(b)):
a += 1 / n
n = n - 2
print (a)
fenshijiafa()
#pyt 3 的 / 运算后是float数据 for in range()需求int型数据,不作int处理会报错
萧丹夜
发表于 2018-5-11 21:14:05
def Ou(n):
result = 0
for i in range(2,n+1,2):
result += 1 / i
return result
def Ji(n):
result = 0
for i in range(1,n+1,2):
result += 1 / i
return result
k = int(input('请输入一个整数:'))
if k % 2 == 0 :
print('结果为:%f' %Ou(k))
else :
print('结果为:%f' %Ji(k))
hfg
发表于 2018-5-30 16:36:48
def fun(n):
s = 0
i = 0
if n == 0:
return 0
if n % 2 == 0:
for i in range(2,n+1,2):
s += 1/i
return s
if n % 2 != 0:
for i in range(1,n+1,2):
s += 1/i
return s
temp = input('请输入一个整数:')
n = int(temp)
print(fun(n))
还在学习中,思考一下有个问题,n为负数呢?
页:
1
2
3
4
5
[6]
7
8
9
10
11
12