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

Ряд Тэйлора. Где ошибка? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ввести матрицу целых чисел .Найти и вывести пару элементов матрицы модуль разности которых минимален http://www.cyberforum.ru/cpp-beginners/thread566762.html
помогите плиз!!!
C++ Найти сумму элементов записанных по диагоналям дана таблица из n строк и n столбцов. найти сумму элементов записанных по диагоналям http://www.cyberforum.ru/cpp-beginners/thread566760.html
Помогите решить задачу пожалуйста C++
Задача на алгоритмы разветвляющейся и циклической структуры:scratch::
C++ В заданном тексте определить, имеются ли слова-перевертыши
В заданном тексте определить, имеются ли слова-перевертыши и если да, то вывести их.
C++ Найти максимальный элемент таблицы и их количество http://www.cyberforum.ru/cpp-beginners/thread566753.html
Как сказал препод нужно создать таблицу найти максимальный элемент и посмотреть сколько раз встречается/ надеюсь на вашу помощь/ !))
C++ Поиск в бинарном файле как определить где в файле находится 0A DD подробнее

Показать сообщение отдельно
nvans
Сообщений: n/a
06.05.2012, 09:10     Ряд Тэйлора. Где ошибка?
Вычислить значения функции из задания 2, где x-псевдослучайное число в интервале (-5.0,+5.5), за исключением |x| <= 1. Вычисления выполнить для 4-х значений точности e: 10^-6, 10^-7, 10^-8, 10^-9 Вычислить 20 значений функции F. Результаты оформить в виде таблицы.

Мой код выдаёт некорректные результаты. Где ошибка?

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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
float ryad_teil(float x, int k);
float random(float a, float b);
 
 
void main()
{
 //time_t t;
 //time(&t);
 srand(time(NULL));
 
float x,g, b=-5.0, c=5.5;
int i=0, k;
   clrscr();
 
//printf("%s\t%s\n",m,ctime(&t));
printf("|     x     |    e=1.e-6    |    e=1.e-7    |    e=1.e-8    |    e=1.e-9    |\n");
 
        while(i<20)
      {
         x=random(b,c);
 
         if ((x>=-1) && (x<=1)) continue;
           printf("| %+f |",x);
            k=6;
            for (int j=0; j<4; j++)
              {
                  printf(" %+e |",ryad_teil(x,k));
                  k++;
               }
               printf("\n");
               i++;
       }
       getch();
}
 
float ryad_teil(float x, int k)
{
 double T,sum=0.;
 float eps=pow(10.,-k);
 int n=0;
           while(fabs(T)>=eps)
              {
                T=1/(((2*n)+1)*pow(x,(2*n)+1.));
                sum=sum+T;
                n++;
              }
 return sum;
}
 
 
float random(float b, float c)
{
     float e = fabs(b)+fabs(c);
     float d = b + (e / (RAND_MAX + 1)) * rand();
     float rnd=d;
 
              while((e<b)&&(e>c)) continue;
 
 return rnd;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru