Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 16.01.2020
Сообщений: 10
1

Задача на определенный интеграл метод Симпсона

11.02.2020, 17:28. Просмотров 534. Ответов 1
Метки нет (Все метки)


Здравствуйте!

Дана задача.
Вычислить определенный интеграл от функции https://www.cyberforum.ru/cgi-bin/latex.cgi?f(x) = sin^{x}{x}, на промежутке [a=-5, b=-3] методом Симпсона. Число разбиений n = 10.

Проблема заключается в том, что конечные данные выдают ошибку -1.#IND00 и как исправить не понятно. Возможно, что подынтегральная функция записана не правильно.

Буду очень признателен Вам за помощь!

Результаты:
Задача на определенный интеграл метод Симпсона


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 <stdlib.h>
#include <stdio.h>
#include <math.h>
 
//Подынтегральная функция
double Fx(double x) {
 
    double result = pow(sin(x), x);
    printf("x = %f, %f\n", x, result);
 
    return result;
}
 
double simpson(double a, double b, int n) {
 
    //Границы интервалов интегрирования
    a = -5;
    b = -3;
    //Число разбиений
    n = 10;
 
    //h - шаг интегрирования, h2 - полушаг интегрирования, x - текущее значение переменной интегрирования.
    double h, h2, x, s;
 
    //printf("Введите число разбиений n = ", &n);
    //scanf("%d", &n);
 
    //определение шагов интегрирования
    h = (b - a) / n;
    printf("h = %f\n", h);
    //Определение полушага интегрирования
    h2 = h / 2;
    printf("h2 = %f\n", h2);
    x = a;
    s = 0;
 
    for (int i = 1; i <= n; i++) {
 
        s = s + Fx(x) + 4 * Fx(x + h2) + Fx(x + h);
        x = x + h;
    }
 
    return s * h / 6;
}
 
double main(double x) {
 
    printf("\nИнтеграл = %f\n", simpson(0.0f, 2.0f, 200));
 
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.02.2020, 17:28
Ответы с готовыми решениями:

Метод Симпсона ( Интеграл)
Помогите пожалуйтса проверить и прокомментировать задачу. Используя метод СИмпсона, составить...

Вычислить, используя метод Монте-Карло, определенный интеграл
Добрый день! Исчислить, используя метод Монте-Карло, определенный интегралом: y=sin(2x) + cos(x)...

Метод левых прямоугольников и метод Симпсона для вычисления интеграла
Составить программу для исчисления интеграла с n количеством интервалов интегрирования. 2...

Вычислить интеграл по формуле Симпсона
Требуется вычислить интеграл по формуле Симпсона. (с экономией вычисления) Наработки: #include...

__________________
Помогаю в написании курсовых работ и дипломов здесь.
1
Модератор
Эксперт Python
28429 / 15318 / 3021
Регистрация: 12.02.2012
Сообщений: 25,091
Записей в блоге: 4
11.02.2020, 18:27 2
Дело в том, голубчик, что в окрестности -3 синус становится отрицательным. А возведение отрицательного числа в вещественную степень дает комплексное число. Похоже, в условии ошибка. Или функция другая.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.02.2020, 18:27

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь или здесь.

Указатель на функцию: Вычислить интеграл методом Симпсона
Вычислить интеграл методом Симпсона . Параметры задачи: a, c, d, n&gt;=6. Задание − написать...

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

C++ OpenMP Определенный интеграл - метод Симпсона
Ребят, имею следующее задание. В С++ не мастер, но я никак не могу понять, как реализовать этот...

Определенный интеграл методом симпсона
Изучал паскаль лет 10 назад...так что уже ниче толком мне помню Жена учится на вышке, и ей тут...


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

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

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