С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

Рекурсия. Вычислить значение суммы - C++

17.03.2013, 15:29. Просмотров 686. Ответов 12
Метки нет (Все метки)

задание внутри помогите пожалуйста
0
Миниатюры
Рекурсия. Вычислить значение суммы  
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.03.2013, 15:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Рекурсия. Вычислить значение суммы (C++):

Вычислить приближенно значение бесконечной суммы (справа от каждой суммы дается ее точное значение, с которым можно сравнить полученный ответ) - C++
1+(1\2^2)+(1\3^2)+(1\4^2)+...=p^2\6

Вычислить приближенно значение бесконечной суммы (справа от каждой суммы дается ее точное значение, с которым можно сравнить полученный ответ): - C++
1+x^1 /1!+x^2 /2!+x^3 /3!+...=e^x

Вычислить значения бесконечной суммы (рекурсия) - C++
Здравствуйте. Я написал код, но он зациклился, не останавливаться. Подскажите, что у меня не так? Раскрыл рекуррентную формулу вроде...

Рекурсия: вычислить значение выражения - C++
Ребят, помогите минимально. Принцип рекурсии понимаю, как использовать не особо. Заранее, спасибо. Задание: Описать функции для...

Рекурсия (вычислить значение выражения) - C++
В универе дали задачку, просто так ее можно сделать, но нужно пользоваться рекурсией, а с ней я, черт возьми, никак не могу разобраться( ...

Вычислить значение выражения (рекурсия/итерация) - C++
Вычеслить y(n)= 1/n+1/(n-1)+1/(n-2)+1/...+1/1+1дробь2 Решит с использыванием рекурсии и без нее

12
easyfrag
0 / 0 / 0
Регистрация: 17.03.2013
Сообщений: 111
17.03.2013, 16:33  [ТС] #2
ребят пожалуйста помогите написать код

Добавлено через 56 минут
пожалуйста
0
go
Эксперт С++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
17.03.2013, 16:39 #3
easyfrag, это Косвенная (взаимная) рекурсия.
0
easyfrag
0 / 0 / 0
Регистрация: 17.03.2013
Сообщений: 111
17.03.2013, 16:48  [ТС] #4
помоги пожалуйста

Добавлено через 23 секунды
прошу тебя
0
go
Эксперт С++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
17.03.2013, 16:57 #5
easyfrag, пример входных и выходных данных дайте. Чтобы мне проще тестировать было. Лень самому считать.
0
easyfrag
0 / 0 / 0
Регистрация: 17.03.2013
Сообщений: 111
17.03.2013, 17:08  [ТС] #6
go, если бы я понял что это такое

Добавлено через 8 минут
пожалуйста напиши код
0
100°
0 / 0 / 0
Регистрация: 14.03.2013
Сообщений: 2
17.03.2013, 17:23 #7
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
#include <iostream>
#include <cmath>
 
int main()
{
    const int SIZE=10;
    int a[SIZE+1]={0,1}, b[SIZE+1]={0,1};
    unsigned int factorial[SIZE+1]={0,1};
    unsigned int n;
    double sum=0;
 
    for (int i=2; i<=SIZE; i++)
    {
        a[i] = 3*b[i-1] + 2*a[i-1];
        b[i] = 2*a[i-1] + b[i-1];
        factorial[i] = i*factorial[i-1];
    }
 
    std::cout << "Enter n : ";
    std::cin >> n;
 
    for (unsigned int i=1; i<=n; i++)
        sum = sum + double(std::pow(2.0, i)) / ((1+std::pow(a[i], 2.0)+std::pow(b[i],2)) * factorial[i]);
 
    std::cout << sum << std::endl;
 
    return 0;
}
0
easyfrag
0 / 0 / 0
Регистрация: 17.03.2013
Сообщений: 111
17.03.2013, 17:25  [ТС] #8
а тут рекурсия есть ?
0
OhMyGodSoLong
~ Эврика! ~
1244 / 993 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
17.03.2013, 17:28 #9
Взял вот этот код, ощутил своё ТОТАЛЬНОЕ И БЕСПРОСВЕТНОЕ ничтожество и прекратил ныть.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
double calc(unsigned n)
{
    int a = 1, b = 1;
    double p = 2.0, f = 1.0;
    double sum = 0.0;
    for (unsigned i = 1; i <= n; i++) {
        sum += p / (f * (1.0 + (1.0 * a) * a + (1.0 * b) * b));
        
        p *= 2;
        f *= i + 1;
        
        int a_ = a, b_ = b;
        a = 3 * b_ + 2 * a_;
        b = 2 * a_ + b_;
    }
    return sum;
}
Рекурсия здесь не нужна.
1
easyfrag
0 / 0 / 0
Регистрация: 17.03.2013
Сообщений: 111
17.03.2013, 17:30  [ТС] #10
мне сказали рекурсию сделать что я теперь сделаю
0
OhMyGodSoLong
~ Эврика! ~
1244 / 993 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
17.03.2013, 17:42 #11
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
int b(int k);
 
int a(int k)
{
    if (k == 1) {
        return 1;
    }
    else {
        return 3 * b(k - 1) + 2 * a(k - 1);
    }
}
 
int b(int k)
{
    if (k == 1) {
        return 1;
    }
    else {
        return 2 * a(k - 1) + b(k - 1);
    }
}
 
double pow(double a, int n)
{
    if (n == 0) {
        return 1.0;
    }
    else {
        return a * pow(a, n - 1);
    }
}
 
double fact(int n)
{
    if (n == 1) {
        return 1;
    }
    else {
        return n * fact(n - 1);
    }
}
 
double sum(int n)
{
    if (n == 0) {
        return 0.0;
    }
    else {
        return pow(2.0, i) / (fact(i) * (1 + pow(a(i), 2) + pow(b(i), 2))) + sum(i - 1);
    }
}
У меня дядя на рекурсивной фабрике работает.
3
easyfrag
0 / 0 / 0
Регистрация: 17.03.2013
Сообщений: 111
17.03.2013, 17:55  [ТС] #12
задание у меня по рекурсии

Добавлено через 35 секунд
спасибо
0
Байт
Нарушитель
Эксперт C
16684 / 10946 / 1682
Регистрация: 24.12.2010
Сообщений: 21,341
06.04.2013, 21:27 #13
easyfrag, Совершенно бессмысленно посылать ваши дурацкие задания в личку. Поймите, что тем самым вы настраиваете людей против себя. И никакой помощи вы не получите, только лишь пинок под зад. Желаю успехов и ума.
0
06.04.2013, 21:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.04.2013, 21:27
Привет! Вот еще темы с ответами:

Рекурсия: вычислить значение логического выражения, заданного в виде строки - C++
Вывести значение логического выражения, заданного в виде строки S. Выражение определяется следующим образом («T» — True, «F» — False): ...

Вычислить значение суммы - C++
Хелпоните с кодом )

Вычислить значение суммы 1/k! - C++
Вычислить значение суммы S = 1/1! + 1/2! + ... + 1/k! Dev-C++

Вычислить значение суммы - C++
3)Вычислить S= ∑_(i-1)^30▒1/〖(2i)〗^2


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

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

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