第6章函式-5 使用函式求餘弦函式的近似值(20分)
阿新 • • 發佈:2021-01-25
第6章函式-5 使用函式求餘弦函式的近似值(20分)
本題要求實現一個函式,用下列公式求cos(x)近似值,精確到最後一項的絕對值小於eps(絕對值小於eps的項不要加):
cos (x) = x^0 / 0! - x^2 / 2! + x^4 / 4! - x^6 / 6! + ?
函式介面定義:funcos(eps,x ),其中使用者傳入的引數為eps和x;函式funcos應返回用給定公式計算出來,保留小數4位。
函式介面定義:
函式介面:
funcos(eps,x ),返回cos(x)的值。
裁判測試程式樣例:
在這裡給出函式被呼叫進行測試的例子。例如:
/ * 請在這裡填寫答案 */
eps=float(input())
x=float(input())
value=funcos(eps,x )
print("cos({0}) = {1:.4f}".format(x,value))
輸入樣例:
在這裡給出一組輸入。例如:
0.0001
-3.1
輸出樣例:
在這裡給出相應的輸出。例如:
cos(-3.1) = -0.9991
#階乘函式
def factorial(n):
number = 1
for i in range(1, n + 1):
number *= i
return number
def funcos(eps, x):
sum = 0
i = 0
while True:
tmp = x ** i / factorial(i)
if tmp < eps:
break
if i % 4 == 2: #0,6,10都是負的
tmp = -tmp
sum += tmp
i = i + 2
return sum