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

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

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

Вычисление значения рядных функций - C++

29.12.2013, 12:11. Просмотров 394. Ответов 1
Метки нет (Все метки)

Здравствуйте, коллеги. Уже третью неделю мучаю программу и не могу понять, в чем ошибка. Нужно посчитать функцию и вывести таблицу (подробнее в приложенном задании). Дело в том, что у меня считает неправильно и во второй таблице не считает дальше двух первых значений. Без этого зачета мне не видать

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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
#include "stdafx.h"
#include <cstdlib>
#include <cmath>
#include <cstdio>
#include <conio.h>
 
using namespace std;
 
int main(int argc, char *argv[])
{
double all_function(double, double);
 
double x_1, x_2, shag, pi;
double myfunc, func, E;
pi=3.14;
printf("Vvedite nachal'noe znachenie X: ");
scanf("%lf", &x_1);
while(x_1*x_1>pi*pi)
{
    printf("Oshibka, povtorite vvod \n");
    scanf("%lf", &x_1);
}
printf("Vvedite konechnoe znachenie X: ");
scanf("%lf", &x_2);
while (x_2<0 || x_2<x_1)
{
    printf("Oshibka, povtorite vvod \n");
    scanf("%lf", &x_2);
}
printf("Vvedite shag dlya X: ");
scanf("%lf", &shag);
while(shag<0)
{
    printf("Oshibka, povtorite vvod \n");
    scanf("%lf", &shag);
}
printf("\nVvedite toshnost': ");
scanf("%lf", &E);
while(E<0, E=0)
{
    printf("Oshibka, povtorite vvod \n");
    scanf("%lf", &E);
}
{
printf(" _______________________________________________________________\n");
printf("|               |               |               |               |\n");
printf("|X              |My Func        |Func           |sigma          |\n");
printf("|_______________|_______________|_______________|_______________|\n");
 
for(; x_1 <= x_2; x_1+=shag)
{
myfunc = all_function(x_1, E);
func = 1/sin(x_1);     
 
printf("|               |               |               |               |\n");
printf("|%-15lf|%-15lf|%-15lf|%-15lf|\n", x_1, myfunc, func, sqrt(fabs(myfunc*myfunc - func*func)));
printf("|_______________|_______________|_______________|_______________|\n");
} 
 
printf("\nVvedite ideal'noe znachenie X: ");
scanf("%lf", &x_1);
printf(" _______________________________________________________________\n");
printf("|               |               |               |               |\n");
printf("|Eps            |My Func        |Func           |sigma          |\n");
printf("|_______________|_______________|_______________|_______________|\n");
for(E = 0.1; E >= 10e-7; E /= 10)
{
myfunc = all_function(x_1, E);
func = 1/sin(x_1);   
printf("|               |               |               |               |\n");
printf("|%-15lf|%-15lf|%-15lf|%-15lf|\n", E, myfunc, func, sqrt(fabs(myfunc*myfunc - func*func)));
printf("|_______________|_______________|_______________|_______________|\n");           
}   
}
system("PAUSE");
return EXIT_SUCCESS; 
}
 
 
 
double all_function(double x, double E)
{
int n, two_up = 2, n_fact = 2; 
double sum = 0, mid_sum = 0, x_up = x;
double bern(long);        
mid_sum = 2 * (1./6) * x / (double)n_fact; 
for(n_fact = 8 ,n = 1; mid_sum > E; n++)
{
      sum += mid_sum;
      two_up *= 4;
      x_up = x*x;
      n_fact *= (2*n+1) * (2*n+2);
      mid_sum = 2 * (two_up - 1) * fabs(bern(n+1)) * x_up / (double)n_fact;
}
sum += 1./x;
return sum;
}
 
double bern(long n)
{
double bink(long, long);
       if(n <= 0) return 1;
       else
       {
      double s = 0;
      for(long k = 1; k <= n; k++)
      {
      s += bink(n+1, k+1) * bern(n-k);
      }
      return -1./(n+1)*s; 
      }
}
 
double bink(long n, long k)
{
       long fact(long);
      return 1. * fact(n)/fact(k)/fact(n-k);
}
 
long fact(long x)
{
 if(x <= 1) return 1;
 else return x*fact(x-1);    
}
0
Вложения
Тип файла: rar Laboratornaya_Rabota_N_4.rar (30.2 Кб, 8 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.12.2013, 12:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вычисление значения рядных функций (C++):

Вычисление значений рядных функций - C++
Вычисление sin^2(x): \sin^2 x=e\times ({-1}^{n+1})\times (({2}^{2n+1}\times {x}^{2n})\div (2n)!)

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

Вычисление значения одной из заданных функций в заданной точке - C++
Всем привет! Нужно написать программку на вычисление значения одной из заданных функций в точке, но незнаю с чего начать и чем закончить,...

Вычислить значения Х по формуле, найти значения функций от Х - C++
Циклы с++ visual studio 10 исправить код Вычислить для первых 20 значений X=1/2, 1-2/3, 1-3/4,...и вывести в виде таблицы с...

Вычисление математических функций - C++
Пожалуйста помогите завтра сдавать.... мне нужно вычислить (arcsin, arcos, arctg, arcctg ). Значение функций выражается в градусах....

Вычисление значений функций. - C++
Доброго времени суток.Мне нужно найти значение функции ,сумму и |Y(x)–S(x)|.При том что Х изменяется от a до b с прибавлением h,где h в...

1
Fantasmaforia
0 / 0 / 0
Регистрация: 10.12.2013
Сообщений: 48
10.01.2014, 21:31  [ТС] #2
вверх
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.01.2014, 21:31
Привет! Вот еще темы с ответами:

Вычисление значений функций - C++
задано х=0.34*21, у=0.18*21,z=-1.72*21 разработать програму для вичисление значений функций с|x,y,z,b| и b|x,y,z| согласно таким...

Вычисление функций разложением в ряд - C++
Всем привет :) У меня есть такое задание... Вычислить и напечатать в виде таблицы значения функции, заданной с помощью ряда Тейлора, на...

Borland C++. Вычисление значений функций - C++
Помогите плиз составить программы решения задач. Насколько я знаю, программы не длинные и не сложные (для знающих), но я пока мало в этом...

Вычисление функций разложением в ряд - C++
Доброго времени суток ))) Прошу помочь начинающему пользователю С++ :-[ Я бы хотела разобраться как выполнить данное задание в коде С++...


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

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

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