Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/120: Рейтинг темы: голосов - 120, средняя оценка - 4.96
0 / 0 / 0
Регистрация: 04.05.2017
Сообщений: 60

Ряд тейлора

17.09.2017, 13:31. Показов 24270. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Разложить в рд тейлора и найти значение функции в данной точке с заданой точностью.функция sin(x^2/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
#include <iostream>
#include <iomanip>
#include <cmath>
 using namespace std;
double sinx(double x);
int main()
{
    double x,e;
 
    cout << "Enter x: ";
    cin >> x;
 cout << "Enter e: ";
    cin >> e;
    cout << "sin(x^2/2) = " << sinx(x) <<endl;
 
    return 0;
    
}
 
double sinx(double x)
{  
    double e;
    double s = x;
    double sum = 0.0;
    int i = 1;
    
 
    do
    {
        sum += s;
        s *= 2*i*(2*i+1)/(-1.0*x*x);
        i++;
    }
    while (fabs(s) > e);
 
    return sum;
}
что не так
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.09.2017, 13:31
Ответы с готовыми решениями:

Вычисление приближенного значения tan(x) через ряд Тейлора/ряд Маклорена
Привет, CF. Задача: Вычисление приближенного значения tan(x) через ряд Тейлора/ряд Маклорена Проблема: не совпадают результаты...

Вычисление функции через разложение в ряд (Ряд Тейлора)
Привет всем. Задание такого плана: Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора,...

Разложение ряд в ряд Тейлора.Переделать программу
Написать программу вычисления и вывода на экран в виде таблицы значений функции, заданной с помощью ряда Тейлора, на интервале от Хзнач до...

7
1617 / 1182 / 553
Регистрация: 08.01.2012
Сообщений: 4,561
17.09.2017, 13:34
Цитата Сообщение от lapsha1337 Посмотреть сообщение
double e;
==???
0
0 / 0 / 0
Регистрация: 04.05.2017
Сообщений: 60
17.09.2017, 13:36  [ТС]
заданая точность е
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
17.09.2017, 13:36
lapsha1337,
в функцию нужно передавать погрешность e, иначе она используется без инициализации:
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
#include <iostream>
#include <iomanip>
#include <cmath>
 using namespace std;
double sinx(double x, double e);
int main()
{
    double x,e;
 
    cout << "Enter x: ";
    cin >> x;
 cout << "Enter e: ";
    cin >> e;
    cout << "sin(x^2/2) = " << sinx(x, e) <<endl;
 
    return 0;
 
}
 
double sinx(double x, double e)
{
   // double e;
    double s = x;
    double sum = 0.0;
    int i = 1;
 
 
    do
    {
        sum += s;
        s *= 2*i*(2*i+1)/(-1.0*x*x);
        i++;
    }
    while (fabs(s) > e);
 
    return sum;
}
0
0 / 0 / 0
Регистрация: 04.05.2017
Сообщений: 60
17.09.2017, 14:50  [ТС]
Ничего не изменилось,ответ также =nan.Програма раньше работала по другой формуле но значения выдавала не правильные

Добавлено через 3 минуты
Может проблема в округлении числа

Добавлено через 1 час 7 минут
C++
1
 s *= 2*i*(2*i+1)/(-1.0*x*x);
Как сделать через факториал
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
17.09.2017, 14:50
Лучший ответ Сообщение было отмечено lapsha1337 как решение

Решение

lapsha1337,
Вроде неправильно было в ряд разложено.
Попробуйте так:
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
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
 
double sinx(double x, double e);
 
int main()
{
    double x, e;
 
    cout << "Enter x: ";
    cin >> x;
    cout << "Enter e: ";
    cin >> e;
    cout << "sin(x^2/2) = " << sinx(x, e) << endl;
    return 0;
}
 
double sinx(double x, double e)
{
    double s = x * x / 2;
    double sum = 0.0;
    int i = 0;
    do
    {
        sum += s;
        i++;
        s *= (-1.0 * x * x * x * x / 4) / (2 * i * (2 * i + 1));
    } while (fabs(s) > e);
    return sum;
}
0
0 / 0 / 0
Регистрация: 04.05.2017
Сообщений: 60
17.09.2017, 14:58  [ТС]
Не правильные значения получаются по такой формуле

Добавлено через 1 минуту
Нет все правильно,спасибо
0
1617 / 1182 / 553
Регистрация: 08.01.2012
Сообщений: 4,561
17.09.2017, 15:01
sinx(100, 1e-6)==?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.09.2017, 15:01
Помогаю со студенческими работами здесь

Ряд Тейлора С++
Вычислите значение функции, заданной с помощью ряда Тейлора, для любого Х из области определения с точностью Ɛ.Выведите значение...

Ряд Тейлора
Помогите пожалуйста с решением задачи: Дано действительное число x. Вычислить значение y с помощью стандартной функции и с помощью...

Ряд Тейлора
ряд Тейлора

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

Ряд тейлора
Доброй ночи. #include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;float.h&gt; #include &lt;math.h&gt; using namespace std; void dno() { ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru