Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
sanlex25
0 / 0 / 0
Регистрация: 29.09.2013
Сообщений: 29
#1

Переписать рекурсивно итерационную функцию. - C++

31.03.2014, 11:17. Просмотров 539. Ответов 3
Метки нет (Все метки)

Кто может записать эту итерационную функцию:
C++
1
2
3
4
5
6
7
8
9
10
11
double norek(double a, double b, double e){
double x;
   while (fabs(b - a) >= e) {
      x = (a + b) / 2;
      if (func(x+e)>func(x-e))
         b = x;
      else
         a = x;
   }
   return (a + b) / 2;
}
в ввиде рекурсивной?

я пробовал написать вот так:
C++
1
2
3
4
5
6
7
8
9
10
11
double rek(double a, double b, double e){
double x;
      x = (a + b) / 2;
      if (func(x+e)>func(x-e))
         b = x;
      else
         a = x;
         if (fabs(b - a) >= e) rek(a,b,e);
         else
         return (a+b)/2;
}
но выдает ошибку "Invalid floating point operation"

Помогите, пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2014, 11:17     Переписать рекурсивно итерационную функцию.
Посмотрите здесь:

Написать итерационную функцию вычисления ряда Фибоначчи - C++
Написать итерационную функцию вычисления ряда Фибоначчи. Помогите пожалуйста.

Вычислить рекурсивно функцию - C++
Вычислить рекурсивно функцию : S(n) 1, если n=1 S(n/2), если n=2k S((3n+1)/2),если n=2k+1 не могу...

Рекурсивно описать функцию C(n,m) - C++
помогите написать код программы если можно. Рекурсивно описать функцию C(n,m), где 0≤m≤n, для вычисления биномиального коэффициента...

Написать функцию высветляющую все указатели цикла(рекурсивно) - C++
Нужно написать рекурсивную функцию которая будет принимать два указателя(1 начало цикла, 2 элемент цикла) и выведет на консоль все...

Написать функцию, которая рекурсивно вычисляет сумму чисел в заданном диапазоне - C++
Написать функцию, которая рекурсивно вычисляет сумму чисел в заданном диапазоне Код: long int Fact(long int N) { // если...

Написать функцию, которая рекурсивно вычисляет сумму чисел в заданном диапазоне - C++
Написать функцию, которая рекурсивно вычисляет сумму чисел в заданном диапазоне.

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Anton_Kretov
89 / 51 / 7
Регистрация: 26.06.2013
Сообщений: 179
31.03.2014, 11:53     Переписать рекурсивно итерационную функцию. #2
Опишите задачу, которую функция должна выполнять - может, помогу.
sanlex25
0 / 0 / 0
Регистрация: 29.09.2013
Сообщений: 29
31.03.2014, 12:00  [ТС]     Переписать рекурсивно итерационную функцию. #3
Найти методом деления отрезка пополам минимум функции f(x) = 7sin2(x) на отрезке [a, b] с заданной точностью e (например, 0.01).
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.03.2014, 12:01     Переписать рекурсивно итерационную функцию.
Еще ссылки по теме:

Рекурсивно и нерекурсивно описать логическую функцию, проверяющую на равенство два бинарных дерева - C++
страшно каюсь, не подумайте что я ленивый тюлень и мне не хочется вникать в тему, обычно я никогда так не делала, но у меня не осталось...

Вычислить сумму ряда с позиции N до позиции M. Функцию вычисления суммы реализовать рекурсивно. - C++
9. Вычислить сумму ряда (-1)в степени 3n/3n! с позиции N до позиции M. Функцию вычисления суммы реализовать рекурсивно. Добавлено...

Написать итерационную формулу - C++
Напишите условие как положено. ребята вы поможете мне написать эту программу! я уже над ним много думала но.......... задача в...

Переписать несложную функцию - C++
Функция void obmen(float *a,float *b) { float temp; temp=*a; temp=*(a+1); *a=*b; *(a+1)=*(b+1); *b=temp;

Переписать функцию с Паскаля на С++ - C++
Есть функция для сортировки списка вставками на Паскале. Нужно переписать функцию на С++. function sort(head1:List):List; ...

Переписать функцию, добавив параметр - C++
Нужна срочно помощь. Необходимо переписать функцию, что балы с параметром. struct Service { char S_Name; char S_Code; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
31.03.2014, 12:01     Переписать рекурсивно итерационную функцию. #4
Вроде бы так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
double rek(double a, double b, double e)
{
    if( std::abs(b - a) < e) 
    {
        return (a + b) / 2;
    }
        
    double x = (a + b) / 2;
    if (func(x+e)>func(x-e))
    {
        b = x;
    }
    else
    {
        a = x;
    }
        
    return rek( a, b, e );
}
Yandex
Объявления
31.03.2014, 12:01     Переписать рекурсивно итерационную функцию.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru