Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
1 / 1 / 0
Регистрация: 26.12.2016
Сообщений: 51
1

вычисления значения функции заданной с п0м0щью ряда

07.01.2017, 20:34. Показов 1369. Ответов 1

Author24 — интернет-сервис помощи студентам
Программа для решения этой задачи уже имеется. Но вычисление происходит не верно.
Программа на Visual C++:
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
125
126
127
128
129
130
131
132
133
// Laba_4.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <windows.h>
#include <string.h>
#include <math.h>
#include <iostream>
#include "conio.h"
 
 
 
double function1(double x)
{
    return 1/sqrt(1 - x);
}
 
double function2(double x, double eps)
{
    double sum = 0;
    double x1 = x;
    double f1, f2;
    f1 = 1;
    f2 = 1;
    sum = f1 / f2;
    int g = 2;
    for (long int i = 2; fabs(f1 / f2) >= eps; i++)
    {
        f1 = f1*x1;
        f2 = f2*g;
        g += 2;
        sum = sum - f1 / f2;
    }
 
    return sum;
}
 
double delta(double d1, double d2)
{
    return sqrt(fabs(d1*d1 - d2*d2));
}
 
char bufRus[256];
char* Rus(const char* text)
{
    CharToOemA(text, bufRus);
    return bufRus;
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    using namespace std;
    double xideal, x1, x2, step, f1, f2, eps;
    setlocale(LC_CTYPE, "rus"); // вызов функции настройки локали
    printf("Введите эпсилон: ");
    cin >> eps;
    while (eps <= 0)
    {
        printf("Введите эпсилон снова: ");
        cin >> eps;
    }
    printf("Введите x1: ");
    cin >> x1;
    while (x1>1)
    {
        printf("Введите x1 снова: ");
        cin >> x1;
    }
    printf("Введите x2: ");
    cin >> x2;
    while (x2>1)
    {
        printf("Введите x2 снова: ");
        cin >> x2;
    }
    printf("Введите дельта x: ");
    cin >> step;
    while (step == 0)
    {
        printf("Введите дельта x снова: ");
        cin >> step;
    }
    double xc, xe, step_;
    xc = x1 * 100000;
    xe = x2 * 100000;
    step_ = step * 100000;
    printf("+----------------------------------------------------------------------------+\n");
    printf("|       x          |     Функция 2      |     Функция 1     |       шаг      |\n");
    printf("+----------------------------------------------------------------------------+\n");
    if ((xc <= xe) && (step_ <= 0) || (xc >= xe) && (step_ >= 0))
    {
        printf("| %15.6lf  |%16.6lf    |   %10.6lf      |%10.6lf      |\n", x1, function2(x1, eps), function1(x1), delta(function2(x1, eps), function1(x1)));
 
    }
    else
    if (xc <= xe)
    {
        for (xc; xc <= xe + 1; xc += step_)
        {
            if (xc <= xe)
            {
                printf("| %15.6lf  |%15.6lf     |   %10.6lf      |%10.6lf      |\n", x1, function2(x1, eps), function1(x1), delta(function2(x1, eps), function1(x1)));
            }
            x1 += step;
        }
    }
    else
    {
        for (xc; xc >= xe - 10; xc = xc + step_)
        {
            printf("| %15.6lf  |%15.6lf     |   %10.6lf      |%10.6lf      |\n", x1, function2(x1, eps), function1(x1), delta(function2(x1, eps), function1(x1)));
            x1 += step;
        }
    }
    printf("+----------------------------------------------------------------------------+\n");
    printf("Введите xideal: ");
    cin >> xideal;
    while (xideal >1)
    {
 
        printf("Введите xideal снова: ");
        cin >> xideal;
    }
    printf("+----------------------------------------------------------------------------+\n");
    printf("|      эпсилон     |     Функция 2      |     Функция 1     |       шаг      |\n");
    printf("+----------------------------------------------------------------------------+\n");
    for (eps = 0.1; eps >= 0.000001; eps *= 0.1)
    {
        printf("| %15.6lf  |%15.6lf     |   %10.6lf      |%10.6lf      |\n", eps, function2(xideal, eps), function1(xideal), delta(function2(xideal, eps), function1(xideal)));
    }
    printf("+----------------------------------------------------------------------------+\n");
    _getch();
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.01.2017, 20:34
Ответы с готовыми решениями:

Составить итерационную программу вычисления и вывода на экран значения функции, заданной с пом. ряда Тейлора
Доброй ночи. Задача учебная. Вычисление суммы ряда оформить в виде функции с параметрами....

Составить блок-схему, алгоритм вычисления и программу для вычисления значения кусочно заданной функции
помогите пожалуйста =) заранее благодарен =) П.5.19.Правил Запрещено создавать темы в виде ссылок...

Составить блок-схему, алгоритм вычисления и программу для вычисления значения кусочно заданной функции
помогите решить

Составить программу для вычисления значения суммы бесконечного ряда с заданной точностью
Определить число членов ряда,вошедших в сумму.Исходные данные 0.62,точность вычисления 10^-4....

1
Модератор
Эксперт CЭксперт С++
5284 / 2371 / 342
Регистрация: 20.02.2013
Сообщений: 5,770
Записей в блоге: 20
07.01.2017, 20:48 2
 Комментарий модератора 
Den_Nick, пожалуйста, прочитайте правила форума.
Особое внимание обратите на следующие пункты:Перепишите условие задачи непосредственно в тело сообщения.
Если в Вашем задании используются математические формулы,
воспользуйтесь редактором формул внизу страницы.

.
0
07.01.2017, 20:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.01.2017, 20:48
Помогаю со студенческими работами здесь

Составить программу вычисления значения суммы бесконечного ряда с заданной точностью ε
Составить программу вычисления значения суммы бесконечного ряда с заданной точностью . На...

Приближенного вычисления функции с заданной точностью eps с помощью ряда
помогите решить лабораторную!!! Составьте программу приближенного вычисления функции с заданной...

Постройте пожалуйста блок-схему для вычисления значения суммы ряда в заданной степенью точности
Пожалуйста постройте блок-схему алгоритма для вычисления значения суммы ряда с заданной степенью...

Написать программу и рекурсивную функцию для вычисления значения суммы бесконечного ряда с заданной точностью
Написать программу и рекурсивную функцию для вычисления значения суммы бесконечного ряда с заданной...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru