Цитата
Приведи пожалуйста пример рекуррентного соотношения не использующего рекурсию.
А что фантазии уже не хватает??
Ну, что нашел из своих старых программ... Пример расчета определенного интеграла Sin (x) методом прямоугольников..
a - нижний предел интеграла
b- верхний предел интеграла
eps - заданная точность
Funkc - функция, для которой надо посчитать интеграл (в данном случае синус)
integ_pryam - функция расчета интеграла...
h - шаг разбиения (для нахождения интеграла для данной точности
В данном случае эта функция будет рекурентной. Т.к. подставив любую функцию в Funkc, которое имеет значение определенного интеграла на данном промежутке, вы всегда сможете получить значение этого интеграла.. А если вы помните, то интеграл, это не что инное как сумма некоторой последовательности...
Цитата
double Funkc (double x)
{
return (sin(x));
}
double integ_pryam (double a, double b, double eps)
{
double integ;
double integ2;
double summa = 0;
double h;
double x;
int n = 1;
h = (b - a) / n;
for (int i = 0; i < n; i++)
{
x = a + h*i;
summa += Funkc (x + h/2);
}
integ = h * summa;
summa = 0;
n *= 2;
h = (b - a) / n;
for (i = 0; i < n; i++)
{
x = a + h*i;
summa += Funkc (x + h/2);
}
integ2 = h * summa;
while (fabs (integ2 - integ) > eps)
{
integ = integ2;
summa = 0;
n *= 2;
h = (b - a) / n;
for (i = 0; i < n; i++)
{
x = a + h*i;
summa += Funkc (x + h/2);
}
integ2 = h * summa;
}
return integ2;
}
Как ты можешь заметить никакой рекурсии здесь нет...
Не путайте рекурентный функции и рекурсивные функции...