Найти приближенное значение функции - C (СИ)
Формулировка задачи:
Описать функцию Exp l(x,ε) вещественного типа (параметры x,ε- вещественные,ε>0), находящую приближённое значение функции exp(x):
exp(x)=1+x+x^2/(2!)+х^3/(3!)+...+x^n/(n!)+...
(n!=1*2*...*n). В сумме учитывать все слагаемые, большие ε. С помощью Exp1 найти приближённое значение экспоненты для данного x при шести данных ε.
Решение:
Переведите пожалуйста на СИ!!!!!
#include <iostream>
#include <cmath>
unsigned factorial(unsigned n)
{
return n == 0 ? 1 : n*factorial(n-1);
}
double Exp(double x, double e)
{
unsigned n = 0;
double sum = 0.0, prsum;
do
{
n ++;
prsum = sum;
sum = 0.0;
for(unsigned i = 0; i < n; i++)
sum += pow(x,i)/factorial(i);
}while(fabs(sum - prsum) > e);
return sum;
}
int main()
{
std::cout << Exp(1.0,1e-3) << " " << Exp(1.0,1e-2);
}Решение задачи: «Найти приближенное значение функции»
textual
Листинг программы
std::cout << Exp(1.0,1e-3) << " " << Exp(1.0,1e-2);