Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
-17 / 0 / 1
Регистрация: 17.04.2013
Сообщений: 60
1

нужно построить рекурсивный алгоритм

04.07.2013, 19:45. Показов 767. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
в общем нужен алгоритм вычисления значение функции exp(x) действительного
аргумента x с точностью ε с использованием рекурсии. Нужен как можно скорее, так как завтра сдавать программу. Старый алгоритм я где-то похерил, а вот отчет по рабочей программе сохранился.
Вложения
Тип файла: docx рекурсивный (5.4).docx (25.8 Кб, 5 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.07.2013, 19:45
Ответы с готовыми решениями:

Нужно построить алгоритм получения всех натуральных чисел Nm
Нужно построить алгоритм получения всех натуральных чисел Nm в заданном диапазоне от А до С, таких,...

Рекурсивный алгоритм
Доброго времени суток #include <iostream> #include <cmath> using namespace std; float rec(int...

рекурсивный алгоритм
Уважаемые программисты! Есть задача: разработать рекурсивный алгоритм на с++ для нахождения самого...

рекурсивный алгоритм
задание было такое (я не раз обращался с ним уже): построить алгоритм вычисления значения аргумента...

5
-17 / 0 / 1
Регистрация: 17.04.2013
Сообщений: 60
04.07.2013, 20:23  [ТС] 2
Так, ладно, код найден. Но вот проблема - программа выполняет алгоритм и тут же закрывается. в чем проблема - не могу понять...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include "StdAfx.h"
#include <cmath>
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <iomanip>
#include <cmath>
 
using namespace std;
 
int factorial(int n) {
    if(n==1 || !n) return 1;
    return n* factorial (n-1); }
 
double expn(double x,double old_x, double eps, int n)
{
    if (!x) return 1.;
    double summ;
    if (n==1) summ = 1.;
    else summ = old_x;
    summ += pow(x,n)/(double)factorial(n);
    if (fabs(summ-old_x)>=eps)
        return expn(x, summ, eps, n+1);
    else return summ;
    system ("pause");
    return 0;
}
 
int main()
{
    cout << expn( 2, 9, 0.01, 1) << endl;
    return 0;
    system ("pause");
}
Добавлено через 42 секунды
а пауза, чтобы посмотреть результат выполнения алгоритма (что же он там все же насчитал...), необходима!
0
43 / 43 / 22
Регистрация: 30.01.2013
Сообщений: 133
04.07.2013, 20:26 3
В самом начале #include<conio.h>
В конце перед return 0 : getch();

Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <cmath>
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <iomanip>
#include <cmath>
#include <conio.h>
 
using namespace std;
 
int factorial(int n) {
    if(n==1 || !n) return 1;
    return n* factorial (n-1); }
 
double expn(double x,double old_x, double eps, int n)
{
    if (!x) return 1.;
    double summ;
    if (n==1) summ = 1.;
    else summ = old_x;
    summ += pow(x,n)/(double)factorial(n);
    if (fabs(summ-old_x)>=eps)
        return expn(x, summ, eps, n+1);
    else return summ;
    system ("pause");
    return 0;
}
 
int main()
{
    cout << expn( 2, 9, 0.01, 1) << endl;
    getch();
    return 0;
}
0
-17 / 0 / 1
Регистрация: 17.04.2013
Сообщений: 60
04.07.2013, 20:49  [ТС] 4
hwmlex, Скажи, а в основе своей алгоритм правильный?
Значение, которое получается на выходе, реальное?
0
43 / 43 / 22
Регистрация: 30.01.2013
Сообщений: 133
04.07.2013, 20:55 5
Как я понял, в данном алгоритме ты вычисляешь e^2. Если да, то считает у тебя правильно.
0
-17 / 0 / 1
Регистрация: 17.04.2013
Сообщений: 60
05.07.2013, 21:23  [ТС] 6
Показал я преподавателю этот алгоритм и результат его выполнения. В общем не правильно все. Должно быть вот что: ввод числа с клавиатуры, и "е" возводилось бы в эту степень. Вот так вот. Поможешь исправить?
0
05.07.2013, 21:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.07.2013, 21:23
Помогаю со студенческими работами здесь

Рекурсивный алгоритм
помогите плиз представить в рекурсивный алгоритм Массив A proverka=1 Цикл для i:=1 до 10...

Рекурсивный алгоритм
помогите пожалуйста Представить в рекурсивный алгоритм Цикл пока ((proverka=1) и (k&gt;1) ) ...

Рекурсивный алгоритм
Даны натуральные числа &quot;N&quot; и &quot;M&quot; надо решить с помощью с++ не могу переставить с этим кодом с++...

Рекурсивный алгоритм F
Привет всем! Помогите пожалуйста как решается данная функция, если F = 6. Вот код программы:...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru