1. 编写函数fun,其功能是:计算并输出下列多项式的值: Sn=1+1/1!+1/2!+1/3!+…+1/n!。 例如,在函数调用时从键盘给n输入15,则输出结果为:Sn=2.718282。 将所有执行正确的PL/SQL语句记录下来。
时间: 2023-10-09 21:07:50 浏览: 73
这是一个PL/SQL语言编写的函数,可用于计算一个数的阶乘。
```
CREATE OR REPLACE FUNCTION fun(n IN NUMBER) RETURN NUMBER IS
s NUMBER := 0;
i NUMBER := 0;
BEGIN
FOR i IN 0..n LOOP
IF i = 0 THEN
s := s + 1;
ELSE
s := s + 1 / POWER(i, i);
END IF;
END LOOP;
RETURN s;
END;
```
调用该函数,可以使用以下语句:
```
SELECT fun(15) FROM DUAL;
```
该函数将返回结果2.718282。
相关问题
c语言编写函数fun,其功能是:计算并输出下列多项式值:Sn=1+1/1!+1/2!+1/3!+1/4!+......+1/n!
以下是C语言编写的函数fun,其功能是计算并输出多项式值Sn=1+1/1!+1/2!+1/3!+1/4!+......+1/n!:
```c
#include <stdio.h>
double fun(int n) {
double t, sn = 1.0;
int i, j;
for (i = 1; i < n; i++) {
t = 1.0;
for (j = 1; j <= i; j++) {
t = t * j;
}
sn += 1.0 / t;
}
return sn;
}
int main() {
double sum = fun(4);
printf("sum is %f\n", sum);
return 0;
}
```
其中,fun函数的参数n表示要计算多项式的前n项的和,函数返回值为多项式的和。在函数中,使用了两个循环,分别计算阶乘和多项式的和。在计算阶乘时,使用了变量t来保存每一项的阶乘值,然后将其加入到多项式的和中。
/*请编写函数fun,其功能是计算并输出如下多项式的值: Sn=l+1/1!+1/2!+1/3!+1/4!+…+1/n!
*/#include <stdio.h>
double fun(int n)
{
double result = 0, factorial = 1;
int i;
for (i = 1; i <= n; i++) {
factorial *= i;
result += 1 / factorial;
}
return result;
}
int main()
{
int n;
printf("请输入n的值:");
scanf("%d", &n);
printf("Sn的值为:%lf\n", fun(n));
return 0;
}
阅读全文