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

Рекурсивные функции: найти заданный элемент последовательности

04.05.2017, 20:16. Показов 1032. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите написать программу при помощи рекурсивной функции, нужно найти 7-ой элемент последовательности.
Рекурсивные функции: найти заданный элемент последовательности
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.05.2017, 20:16
Ответы с готовыми решениями:

Рекурсивные функции. Найдите n-ый член последовательности
Определите закономерность формирования членов последовательности. Найдите n-ый член...

Разработать рекурсивные функции для вычисления n-го числа последовательности
Разработать рекурсивные ф-ии для вычисления n-го числа следующей последовательности: b1=-5;...

Рекурсивные функции. Ввести последовательность чисел и вывести их в обратной последовательности.
1) Ввести последовательность чисел (окончание ввода – 0) и вывести их в обратной...

Рекурсивные функции: нахождение n-го члена последовательности, заданной рекуррентной формулой
Доброе время суток! Помогите пожалуйста с решением задачи. Написать программу для нахождения n-го...

4
1272 / 1029 / 470
Регистрация: 25.12.2016
Сообщений: 3,333
05.05.2017, 08:56 2
Примерный вид рекурсивной функции:
C++
1
2
3
4
5
6
7
8
9
10
11
double f(int n, double a)
{
    if (n == 0)
    {
        // вычисляем x0 по формулам
    }
    else {
        double t = exp( f(n-1, a) );
        return 3.0 / (t + t*t + 2);
    }
}
0
21 / 21 / 10
Регистрация: 11.09.2015
Сообщений: 103
05.05.2017, 11:05 3
Digoz, оптимизация хвостовой рекурсии в Микрософтовском компиляторе позволяет неограниченное число повторений k без переполнения стека!
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
// cl /EHsc /W4 /O2 TailRecursion.cpp
// Microsoft C++ Compiler
#include <iomanip>
#include <iostream>
#include <string>
using namespace std;
 
// Tail recursion optimization with unlimited k
double xn (int k, int i, double x1) {
  if (i == k) return x1;
  return xn (k, ++i, 3 / (exp (x1) * (1 + exp (x1)) + 2));
}
 
void main (int argc, char** argv) {
  if (argc != 3) {
    cout << "Using:\n" << "TailRecursion k a";
    return;
  }
  int k = stoi (argv[1]);
  double a = stod (argv[2]);
  double x0 = a < 5 ? 4 / exp (a+5) + 0.12
    : a < 11 ? 3 / exp (4 / a) + 0.21
    : 1 / exp (a / 2) + 0.04;
  double xk = xn (k, 0, x0);
  cout << "xk " << setprecision (15) << xk;
}
0
0 / 0 / 1
Регистрация: 14.11.2016
Сообщений: 31
07.05.2017, 11:11  [ТС] 4
Разобрался, вот программа:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
 
float x(float a, int n)
{ 
    if (a<5) return 4/pow(M_E,a+5)+0,12;
        else if (5<=a && a<11) return 3/pow(M_E,4/a)+0.21;
            else if (a>=11) return 1/pow(M_E,a/2)+0.04;
    return 1/(pow(M_E,(x(a,n-1)))+pow(pow(M_E,(x(a,n-1))),2)+2);
}
int main(int argc, char** argv) {
int A,N;
cout<<"Vvedite a= "; cin>>A;
cout<<endl<<"Vvedite n= "; cin>>N;
cout<<endl<<N<<" element"<<x(A,N);
getch();
    return 0;
}
0
1272 / 1029 / 470
Регистрация: 25.12.2016
Сообщений: 3,333
07.05.2017, 19:23 5
Цитата Сообщение от Digoz Посмотреть сообщение
Разобрался, вот программа:
Увы, в ней много ошибок. Попробуйте повводить разные n при одном a - увидите, что результат от n не зависит.
В записи формул тоже много ошибок, посмотрите как они записаны в программе Kudryashov_R_D.
0
07.05.2017, 19:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.05.2017, 19:23
Помогаю со студенческими работами здесь

Разработать рекурсивные функции для вычисления n-го члена следующей последовательности
Нужно разработать рекурсивные функции для вычисления n-го члена следующей последовательности. Если...

Рекурсивные функции. Разделение эл. массива, пока не останется 1 элемент
Вся суть в том что нужно взять массив из 10 элементом и разделить его на пополам (например от 1 до...

Рекурсивные и не рекурсивные функции (вычисление суммы всех натуральных чисел от 1 до n)
Всем привет. Заранее извиняюсь за мб глупые вопросы и навязчивость. Но у меня есть одна просьба. ...

Последовательность задана рекуррентным соотношением. Вычислить заданный элемент последовательности
проверте код пожалуйста вроде не точно вычисляет #include&lt;iostream&gt; #include&lt;conio.h&gt; using...


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

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