|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转新大榭论坛!
您需要 登录 才可以下载或查看,没有账号?注册
x
题目:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+…+1/n,当输入n为奇数时,调用函数1/1+1/3+…+1/n
1 u% u. P, L$ t! T& y$ |" [, G' n程序分析:无。, k! Q7 R$ B6 P4 `: [
- def peven(n):0 C8 P9 g/ ~: }$ z
- i = 09 {( }- N8 H; t
- s = 0.09 Q7 {2 K( T& B; j
- for i in range(2,n + 1,2):- g8 ]2 S* Y; M1 r4 a0 d8 D
- s += 1.0 / i
9 j- H7 Q# |/ r5 K. ]7 t - return s
( e+ r0 N& {* l -
, }8 N9 V! L& n" ?& w- e: a- H) | - def podd(n):
& C% s8 \! w M- u# N+ p2 m - s = 0.0
: x3 d/ W' k8 \% I" e - for i in range(1, n + 1,2):
( w% s- W1 t. q: y( ~ G - s += 1.0 / i$ t9 s3 G4 f( P& q2 C: B( Z, X
- return s
- X$ F- J& y3 s6 t4 | - & B; c+ ~7 r+ g: A
- def dcall(fp,n):, Y* l' E1 A4 m) t0 E8 Z7 T
- s = fp(n), ?- o. E3 C8 s- B; u/ f
- return s% X( h" @- ~' z R* a
- : P$ U2 \* X+ v2 X1 A0 @( [
- if __name__ == '__main__':
3 U! P) L h6 Y$ _7 i1 y - n = int(input('input a number: '))0 ~* M' u$ c y" }
- if n % 2 == 0:
6 e$ P$ B) r- M# p J - sum = dcall(peven,n)6 |8 j% B5 b$ t% q" ~2 m- ?. U7 R
- else:
& R3 n& I. B6 r3 f! y/ I% X - sum = dcall(podd,n)
/ Q/ X7 C* b7 ]% {6 O- F) h# J - print (sum)
复制代码 |
|