Рекурсия

Тема в разделе "MS Visual C++", создана пользователем magdalena, 27 дек 2012.

  1. magdalena

    magdalena Гость

    У меня есть проблема. Задание :"Произвести программную реализацию расчета приблизительного значения функции y=x+x3/3x! + x5/5x! + x7/7x! + ..., разложивши функцию sh(x) в ряд Тейлора. x3 - означает в кубе. / - разделить. Программа запускаеться в кампиляторе но не выдает результат. Может где ошибка. Кто подскажет , пожалуйста.
    Код:

    #include<iostream>
    #include<math.h>
    #include<conio.h>
    usingnamespace std;
    double function1 (int n);

    double function (int n, int x, int e);
    int main(){
    double x, dx, xbegin, xend, e,i,b,n;
    printf("Enter xbegin, xend, dx, e:\n");
    scanf("%f %f %f %f",&xbegin,&xend,&dx,&e);

    for (x = xbegin; x <= xend; x += dx)
    {
    b=((2*n-1)*pow(x,2*n+1)/(function1 (n)));
    b=+b;
    //printf(" result);
    printf("\n Calculated values: %f ", b );
    b=0;
    }
    getch();
    //return 0;
    }
    double function1 (int n)
    {
    if (n==1)
    return 1;
    else
    return n* function1(n-1);
    }
    double function2 (int n, double x, double e)
    {
    double res=(n%2==0)?-1:1;
    res*=function2(n,x,e);
    res=(fabs(res)<e)?0:res+function2(n+1, x, e);

    return res;
    }
     
  2. rrrFer

    rrrFer Well-Known Member
    Команда форума C\C++ Team

    Регистрация:
    6 сен 2011
    Сообщения:
    1.324
    Симпатии:
    36
    наверное она зацикливается, пройдись отладчиком и посмотри какие значения тут используются:
    Код (Text):
    for (x = xbegin; x <= xend; x += dx)
     
Загрузка...
Похожие Темы - Рекурсия
  1. vera2014
    Ответов:
    0
    Просмотров:
    1.070
  2. 95процентов
    Ответов:
    7
    Просмотров:
    1.911
  3. 95процентов
    Ответов:
    0
    Просмотров:
    945
  4. 95процентов
    Ответов:
    0
    Просмотров:
    1.015
  5. vladis222
    Ответов:
    10
    Просмотров:
    2.382

Поделиться этой страницей