c语言编写程序【问题描述】已知ex的近似值可由下面公式计算得出:ex=1 + x1! + x22! + x33! + + xnn!假设迭代n次求得的近似值为xn迭代n-1次求得的近似值为xn-1。给定x和n利用上述公式求得ex的近似值以及最后两次迭代求得的近似值之差的绝对值即:xn-xn-1。【输入形式】从控制台输入整数x和整数nn=1用空格隔开。注意:x有可能为负数。【输出形式】向控制台输出求
#include <stdio.h>
int factorial(int n) { int result = 1; for (int i = 1; i <= n; i++) { result *= i; } return result; }
int main() { int x, n; scanf("%d %d", &x, &n);
double ex = 1.0;
double xn_minus_1 = 1.0;
double xn = 1.0;
double diff = 0.0;
for (int i = 1; i <= n; i++) {
xn_minus_1 = xn;
xn += (double)x / factorial(i);
diff = xn_minus_1 - xn;
}
printf("%.5lf %.5lf\n", xn, diff);
return 0;
原文地址: https://www.cveoy.top/t/topic/hzMQ 著作权归作者所有。请勿转载和采集!