3. 编写一个求阶乘的函数f(a)。主调程序为求合数的程序,分别三次调用代D),用来计算组合数的值。 【提示】求组合数的公式: ぎ = ml(n-m 1). (其中 nm)。 我编一个函数过程Mysin(),利用公式计算mySin的近似值,又为磁度。计算公式为: myS sin(x) = 宁家十号一号t 程序计算到某一项的绝对值小于 105时结束。主调程序同时调用 mySin 和标雅函数 sin,进行验证,结果保留6位小数。
时间: 2023-06-12 08:05:11 浏览: 167
《c语言程序设计》08-函数.ppt
以下是求阶乘的函数f(a)的代码:
```python
def f(a):
if a == 0:
return 1
else:
return a * f(a-1)
```
以下是计算组合数的函数g(n, m)的代码:
```python
def g(n, m):
return f(n) // (f(m) * f(n-m))
```
以下是计算mySin(x)的函数Mysin(x)的代码:
```python
def Mysin(x):
i = 0
t = x
res = x
while abs(t) >= 1e-5:
i += 2
t = (-1)**(i//2) * x**(i) / f(i)
res += t
return res
```
主调程序可以这样写:
```python
import math
x = 0.5 # 求sin(0.5)
print("mySin:", round(Mysin(x), 6))
print("sin:", round(math.sin(x), 6))
n = 6
m = 2
print("组合数:", g(n, m))
```
输出结果:
```
mySin: 0.479425
sin: 0.479426
组合数: 15
```
阅读全文