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

Проинтегрировать функцию методом правых прямоугольников - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сформировать одномерный массив по арифметическим выражениям http://www.cyberforum.ru/cpp-beginners/thread1180440.html
Помогите пожалуйста решить и распишите каждую строчку т.е что тут произошло -Сформировать одномерный массив А из 20 целых чисел, которые вычисляются по закону А=A*2, a A=1
C++ Найти разделяющий индекс 4. int partition(int first, int last, string appNames, float appPrices); Splits string array appNames and appPrices around a pivot index p (the pivot). At the end of the partition, prices in... http://www.cyberforum.ru/cpp-beginners/thread1180436.html
Определить попадание произвольной точки в заштрихованную область C++
Помогите пожалуйста написать программу. Задание:"Определить попадание произвольной точки в заштрихованную область"Язык С++. Заранее огромное спасибо!!!)))
C++ Чтение уравнения из файла
Здравствуйте уважаемые форумчане! Мне необходима ваша помощь. Я считываю матрицу из файла: n = stroki(); m = stolbci(); a = new double ; b = new double *; for( int i = 0; i < n ; i++)...
C++ Удаление строки из файла http://www.cyberforum.ru/cpp-beginners/thread1180341.html
Кто может подсказать рабочую функцию удаление строки из файла. Поиск строки не нужен, только удаление :)
C++ Множественное определение переменной Доброго времени суток. Просидев n-ое кол-во часов, доделал считай проект и тут вылезли ошибки о multiple definition. Ругается на переменные, определённые в .h файле, в хэдере само собой... подробнее

Показать сообщение отдельно
zaqwerty
2 / 2 / 1
Регистрация: 14.12.2013
Сообщений: 113

Проинтегрировать функцию методом правых прямоугольников - C++

19.05.2014, 06:21. Просмотров 345. Ответов 0
Метки (Все метки)

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


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

Я написал программу, которые строит графики функции, выбранной пользователем. Код программы приведен ниже:
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
#include <stdio.h>
#include <graphics.h>
#include <math.h>
#include <locale>
const int X0=400;
const int Y0=400;
const float xmin=-10;
const float xmax=10;
int main()
{
setlocale(LC_ALL,"Russian");
float b,xmin=-10,xmax=10,h=0.001,a,x,y,c;
int l;
printf("Выберите график\n 1) y=a*x*x*x+b*x+c\n 2) y=a*cos(x+b)+c\n 3) y=a*log(fabs(x+b))+c;\n");
scanf("%d",&l);
if(l==1)
{
printf ("Введите значение a=");
scanf("%f",&a);
printf ("Введите значение b=");
scanf("%f",&b);
printf("Введите значение c=");
scanf("%f", &c);
initwindow(800,800);
line (X0,0,X0,799);
line (0,Y0,799,Y0);
 
for (x=xmin;x<=xmax;x+=h)
{
  y=a*x*x*x+b*x+c;
 
 putpixel(x+X0,-y+Y0, 3);
 
}
}
else
if(l==2)
{
   printf ("Введите значение a=");
scanf("%f",&a);
printf ("Введите значение b=");
scanf("%f",&b);
printf("Введите значение c=");
scanf("%f", &c);
initwindow(800,800);
line (X0,0,X0,799);
line (0,Y0,799,Y0);
 
for (x=xmin;x<=xmax;x+=h)
{
  y=a*cos(x+b)+c;
 
 putpixel(x+X0,-y+Y0, 4);
 
} }
else
if(l==3)
{
   printf ("Введите значение a=");
scanf("%f",&a);
printf ("Введите значение b=");
scanf("%f",&b);
printf("Введите значение c=");
scanf("%f", &c);
initwindow(800,800);
line (X0,0,X0,799);
line (0,Y0,799,Y0);
 
for (x=xmin;x<=xmax;x+=h)
{
  y=a*log(fabs(x+b))+c;
 
 putpixel(x+X0,-y+Y0, 5);
 
} }
else
{printf("Необходимо выбрать график 1, график 2 или график 3");}
getch();
return 1;
}
Формула для вычисления интеграла функции методом правых прямоугольников:
I=h*(y1+y2+...+yi),
где h - шаг построения прямоугольников на оси x,
i=1,...,n
yi - значение подынтегральной функции в каждой точке деления.
0
Изображения
 
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru