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

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

17.01.2014, 22:06. Показов 4661. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Будьте добры , проверьте правильно ли считает данная программа.И можно ли её доработать?
Задание:
Кликните здесь для просмотра всего текста
Разработать программу для вычисления определенного
интеграла методом средних прямоугольников для функции
типа: y=a ∙ cos (b ∙ x )+ x^c . Коэффициенты a, b, 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
#include "stdafx.h"
#include <math.h>
#include <iostream>
 
using namespace std;
 
//---------------------------------------------------------------------------
//Подынтегральная функция
double func(double,double,double,double);
 
//---------------------------------------------------------------------------
// Метод средних прямоугольников
double Int(double,double,double);
 
//---------------------------------------------------------------------------
// Проверка количество точек разбиения отрезка интегрирования (n) 
int test(int n);
 
void main()
{
setlocale(LC_ALL,"Russian" );
 
double x1,x2,a,b,c;
unsigned long int n;
cout<<"Задание:"<<endl<<"Разработать программу для вычисления определенного интеграла"<<endl<<"методом средних прямоугольников для функции типа:"<<endl<<"y=a*cos(b*x)*x^c"<<endl<<"Коэффициенты a, b, c и границы интервала интегрирования считываются с экрана."<<endl;
 
cout<<"-----------------------------------------------------------------------------"<<endl;
cout<<"\nОпределите границы интервала:"<<endl<<"\nx1:\t"; 
cin>>x1;
cout<<"x2:\t";
cin>>x2;
 
 
while(true)
{
int cs;
cout<<"\nВведите количество точек разбиения отрезка интегрирования n."<<endl<<"\nn:\t";
cin>>n;
cs=test(n);
if (cs==0)
cout<<"\nЗначение n меньше единицы. Введите заново.\n";
else
break;
}
 
//--------------------------------------------------------------------------- 
//Вывод результата
 
cout << endl <<"\nРезультат интегрирования= " << Int(x1,x2,n)<<endl;
 
}
 
//---------------------------------------------------------------------------
// Метод средних прямоугольников
double Int(double x1,double x2,double n)
{
double a,b,c;
cout<<"\nВведите коэффициенты подынтегральной функции{y=a * cos (b * x )+ x^c}:"<<endl<<"\na\t";
cin>>a;
cout<<"b:\t";
cin>>b;
cout<<"c:\t";
cin>>c;
    double dx=fabs(x1-x2)/n;//приращение
    double Integ=0;
    for ( int i=0 ; i<n ; i++)
    {
        Integ += func((x1+dx*i),a,b,c);
    }
    Integ *= dx;
    return Integ ;
}
//---------------------------------------------------------------------------
//Подынтегральная функция
 
double func(double x,double a,double b,double c)
{
return (a * cos (b * x )+ pow (x,c));
}
 
//---------------------------------------------------------------------------
// проверка количество точек разбиения отрезка интегрирования (n) 
int test(int n)
{
if (n<1)
return 0; 
else
return 1;
}

И еще парочку вопросов :
1)Нужно ли писать чему равен интеграл?
2)Может ли быть число n дробным?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.01.2014, 22:06
Ответы с готовыми решениями:

Вычисление определенного интеграла методом средних прямоугольников для функции
Вот само задание : Разработать программу для вычисления определенного интеграла методом средних прямоугольников для функции типа:...

Метод средних прямоугольников и количество вычислений для вычисления определенного интеграла
Задание:Вычислить значение определенного интеграла методом средних прямоугольников и вычислить количество разбиений , потребовавшееся для...

Метод средних прямоугольников и количество вычислений для вычисления определенного интеграла (Си -> C++)
Задание:Вычислить значение определенного интеграла методом средних прямоугольников и вычислить количество разбиений , потребовавшееся для...

6
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
17.01.2014, 22:15
Цитата Сообщение от 150333 Посмотреть сообщение
2)Может ли быть число n дробным?
n-число отрезков,делать его дробным бессмысленно.

Цитата Сообщение от 150333 Посмотреть сообщение
1)Нужно ли писать чему равен интеграл?
То есть конечный результат?
0
3 / 3 / 0
Регистрация: 18.10.2013
Сообщений: 107
17.01.2014, 22:48  [ТС]
1)Нужно ли писать чему равен интеграл?
Извиняюсь за глупый вопрос
А как ты думаешь , чем еще можно дополнить программу ?
0
71 / 59 / 14
Регистрация: 20.12.2013
Сообщений: 723
17.01.2014, 23:00
Еще бы следовало обработать значение степени- корень из отрицательного числа, например, не является действительным числом.
Еще шаг интегрирования можно сделать переменным.
1
3 / 3 / 0
Регистрация: 18.10.2013
Сообщений: 107
17.01.2014, 23:18  [ТС]
Еще бы следовало обработать значение степени- корень из отрицательного числа, например, не является действительным числом.
А как сделать проверку степени числа , рациональное оно или целое ?
0
71 / 59 / 14
Регистрация: 20.12.2013
Сообщений: 723
17.01.2014, 23:46
Функция modf вроде выделяет дробную часть, сам не пользовался, можно ее сравнить с малым числом и на основе этого делать вывод.

Здесь другое дело- попробовал в Mathematica вычислить (-27)^(1/3) - выдает мнимое число, я думал здесь -3 ответ, надо с правилами математики разобраться- какие степени допустимы, только ли целые.

p.s. modf только покажет целое ли оно.
0
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
18.01.2014, 00:36
Цитата Сообщение от 150333 Посмотреть сообщение
А как ты думаешь , чем еще можно дополнить программу ?
Можешь реализовать похожий метод трапеций.

Добавлено через 40 секунд
Цитата Сообщение от AndrSlav Посмотреть сообщение
(-27)^(1/3) - выдает мнимое число, я думал здесь -3 ответ
-3 и будет

Добавлено через 21 минуту
Цитата Сообщение от AndrSlav Посмотреть сообщение
Здесь другое дело- попробовал в Mathematica вычислить (-27)^(1/3) - выдает мнимое число, я думал здесь -3 ответ, надо с правилами математики разобраться- какие степени допустимы, только ли целые.
Дело в том,что у уравнения https://www.cyberforum.ru/cgi-bin/latex.cgi?{x}^{3}=-27 ,есть 3 корня.
Одно из них -3,а два других комплексные:
https://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{3}{2}*(1+\sqrt{3}*i) \\\frac{3}{2}*(1-\sqrt{3}*i)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.01.2014, 00:36
Помогаю со студенческими работами здесь

Вычисление определенного интеграла методом средних прямоугольников
Вот написал прогу для вычисления определенного интеграла. \int_{0}^{2}\left(x^3\cdot e^x \right)dx\\F\left(x...

Разработать алгоритм и программу приближенного вычисления интеграла методом прямоугольников
Пределы интегрирования a, b и шаг интегрирования h (h=const) вводятся пользователем. 0&lt;=a,b&lt;=20; a&lt;b; 0,0001&lt;=h&lt;=1. ...

Разработать программу вычисления интеграла методом правых прямоугольников
Уважаемые товарищи, очень нужна ваша помощь в решении поставленной задачи. Задание таково: разработать программу вычисления интеграла...

Вычисление определенного интеграла методом средних прямоугольников используя потоки Java
Здравствуйте, в ргр есть задание написать программу для вычисления определенного интеграла (f(x) = sqrt(2 - x^2) dx) в пределах от 1 до...

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


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru