0 / 0 / 1
Регистрация: 29.03.2016
Сообщений: 12
1

C++ Рекурсия

02.04.2016, 15:29. Показов 492. Ответов 5
Метки нет (Все метки)

Через рекурсию) Если можно, то исправьте код)
https://www.cyberforum.ru/atta... 1459599977
Вложение 672269
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
using namespace std;
float fact(int);
int main()
{ int n; float x;
setlocale(LC_ALL, "Russian");
cout«"Введите n "; cin»n;
cout«fact(n)«"\n";
return 0; }
float fact(int n)
{ float rez;
if (n==0)return 3.14/2;
if (n==1) return 1;
rez=(n-1)/(n*fact(n-2));
n--;
return rez;}
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.04.2016, 15:29
Ответы с готовыми решениями:

Рекурсия. Рекурсия с мемоизацией
Добрый день. Задача такова: У нас есть массив для длины строки (пусть будет M=20). У нас есть некие...

Рекурсия
Кто знает как написать программу на C ++, которая рекурсивно генерирует следующий времена этой...

рекурсия B c++
пожалуйста помогите,почему не работает? дело в рекурсии,функция func1 вызывается много раз.. ...

Рекурсия
Помогите с рекурсией

5
115 / 105 / 51
Регистрация: 29.03.2016
Сообщений: 480
02.04.2016, 15:38 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
#include <iostream>
 
using namespace std;
 
float fact(int);
int main()
{ 
    int n; 
    float x;
    setlocale(LC_ALL, "Russian");
    cout << "Введите n "; 
    cin >> n;
    cout << fact(n) << "\n";
    return 0; 
}
 
float fact(int n)
{ 
    float rez;
    if (n == 0) return 3.14/2;
    if (n == 1) return 1;
    rez = (n - 1) / (n * fact(n - 2));
    n--;
    return rez;
}
что исправлять-то?
0
0 / 0 / 1
Регистрация: 29.03.2016
Сообщений: 12
02.04.2016, 15:59  [ТС] 3
Программа для n>2 не правильно считает)
0
115 / 105 / 51
Регистрация: 29.03.2016
Сообщений: 480
02.04.2016, 16:04 4
не очень понимаю смысл этой программы
0
47 / 47 / 31
Регистрация: 02.04.2016
Сообщений: 312
02.04.2016, 16:10 5
если честно - я не соображу что программа считать должна

Добавлено через 3 минуты
особенно не понятно вот это
C++
1
2
3
rez = (n - 1) / (n * fact(n - 2));
    n--;
    return rez;
что бы ты не пытался посчитать, n у тебя дискрементируется уже на этапе выхода из рекурсии и никак не влияет на результат работы программы.
0
125 / 117 / 67
Регистрация: 07.11.2014
Сообщений: 788
02.04.2016, 16:11 6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
int factorial(int n);
int main()
{
int n;
cout<<"Enter n "; cin>>n;
cout<<factorial(n)<<"\n";
return 0; } 
int factorial(int n) {
    if (n < 0 ) {
        return 0;
    }
      return n ? n * factorial(n - 1) : 1;
  }
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.04.2016, 16:11

Рекурсия
Подскажите пожалуйста!Для заданного одномерного массива B из N элементов найти сумму выражений,...

рекурсия
Добрый вечер! Пожалуйста, помогите разобраться с рекурсией. Как ее вычислять, когда у меня есть...

Рекурсия
Мне нужно что бы в рекурсии делал от большого на маленький. Вот сам код: #include &lt;iostream&gt; ...

рекурсия в С++
Изучаю использование рекурсивной функции в С++. Правильно ли я понял: - что нет ограничений в max...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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