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

Как заменить цикл while на рекурсию? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Неименнованный канал http://www.cyberforum.ru/cpp-beginners/thread1073105.html
Почему так происходит, что функция read в такой связке записывает данные в неименнованный канал, хотя по идее она должна читать из него? #define bufsize 4096 char buf; pid = fork(); if (pid != 0) { read(filedes, buf, bufsize); } else
C++ Как происходит процесс выделения памяти в стеке и куче #include <stdio.h> #include <conio.h> #include <windows.h> #include "disc.h" void main() { SetConsoleCP(1251); SetConsoleOutputCP(1251); Disc d1,d2; http://www.cyberforum.ru/cpp-beginners/thread1073084.html
Интерационные циклы (найти ошибку) C++
Скажите, пожалуйста, где я допустила ошибку? #include "stdafx.h" #include <stdio.h> #include <conio.h> #include <cmath> using namespace std;
Деструктор абстрактного класса C++
Почему деструктор абстрактного класса нужно делать виртуальным?
C++ Матрица. Все элементы последней строки уменьшить на соответствующие элементы третьего столбца http://www.cyberforum.ru/cpp-beginners/thread1073015.html
В первом модуле определена квадратная матрица 4-ого порядка. Выводится из изменная матрица построчно. Во втором модуле все элементы последней строки уменьшаются на соответствующие элементы третьего столбца.
C++ Изменить программу сабж для приаттаченной задачи по аналогии с кодом ниже, вроде просто, но не получается, прошу помощи :) #include "stdafx.h" #include <Iostream> #include <math.h> using namespace std; int main() { setlocale(LC_ALL, "Russian"); float x, a, b; подробнее

Показать сообщение отдельно
cHuVbaka
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 120
16.01.2014, 14:57     Как заменить цикл while на рекурсию?
Как сделать в даной функции, вычисления через рекурсию, а не через цикл...
тут происходит розложение в ряд Тейлора,

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
double getf(double x, double eps) // значение по разложению
{ 
    double first = x;
    double member = 1/first;
    int k = 3;
    double ret = 0.0;
    
    while (eps < fabs(member))
    {
        ret += member;
        first *= x*x;
        member = 1/(k*first);
        k += 2; 
    }
    
    return 2*ret;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 14:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru