Форум программистов, компьютерный форум CyberForum.ru

ряд тейлора, поправьте прогу - C++

Восстановить пароль Регистрация
 
megabobik
 Аватар для megabobik
0 / 0 / 0
Регистрация: 15.01.2010
Сообщений: 45
17.04.2010, 18:20     ряд тейлора, поправьте прогу #1
Имеется код , нужно чтобы прога подставляла значения тангенса по етой системе
{y=tg(x/2)/tg(2*x) , -2<=x<0
{y=tg(x)+tg(x^2) , 0<=x<=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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <math.h>
#include <stdio.h>
#include <iostream>
#include <conio.h>
 
float tang(float x)
{
    int n,k=1;
    float fMemb;
    float fSum=1;
    for (n=1;n<8;n=n+1)
        {   //fMemb=abs(((pow(-4,n)*(1-pow(4,n)))*pow(x,2*n-1))/2*k);    //общий вид
            fMemb=x+(pow(x,3)/3)+(2*pow(x,5)/15)+(17*pow(x,7)/315)+(62*pow(x,9)/2835);//
            k=k+1;
             fSum+=fMemb;
        }
    //return fSum;
    return fMemb;
}
 
void main()
{
    float fErr, fArg, fStan, fTay, fStart, fFin; //fStep;
    puts("This proram can resolve next equation:");
    puts("{y=tg(x/2)/tg(2*x) , -2<=x<0;");
    puts("{y=tg(x)+tg(x^2) , 0<=x<=2;");
    puts("In the end it show error between Taylor row and comp.calcing.\n");
    printf("Enter your borders in range -3<x<3\n");
    scanf_s("%f%f", &fStart, &fFin);
    puts("======================================================");
    printf("     x      y   wannabe     error           \n");
    puts("======================================================");
    for (fArg=fStart;fArg<=fFin;fArg+=0.5)
    {   int iFlag=0;
        if (fArg>=-3&&fArg<0)
        {   fTay=tang(fArg/2)+tang(2*fArg);
            fStan=tan(fArg/2)+tan(2*fArg);
            fErr=fStan-fTay;        
        }
     else if (fArg>=0&&fArg<=3)
        {   fTay=tang(fArg)+tang(pow(fArg,2));
            fStan=tan(fArg)+tan(pow(fArg,2));
            fErr=fStan-fTay;
        }
     else iFlag=1;
        if (iFlag==0)
        printf("%8.3f%10.3f%12.3f%15.3f  \n", fArg, fTay, fStan, fErr);
        else printf("   %8.3f       not defined \n", fArg);
    }
    _getch();
}
ЗЫ.Может ктото подсказать как сделать матрицу в которой числа ишли б с левого верхнего и правого нижнего углов .
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.04.2010, 18:20     ряд тейлора, поправьте прогу
Посмотрите здесь:

Ряд Тейлора C++
Ряд Тейлора на С++ C++
C++ Ряд тейлора
C++ Ряд Тейлора
ряд Тейлора C++
ряд Тейлора C++
C++ Ряд тейлора

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 20:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru