Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.05.2011, 20:45   #1
km77
 
Регистрация: 31.05.2011
Сообщений: 4
Восклицание Численное интегрирование(метод прямоугольников)

Помогите пожалуйста решить задачу, в которой нужно с помощью метода прямоугольников найти определенный интеграл ф-ии sqrt(x) на отрезке [1,4] и задать определенную точность eps ,чтобы результат выводился с точностью,допустим 4 знака после запятой 0,0001 или 3 знака-0,001.Вообще каким оператором можно сделать и задать точность вычислений?
Вот моя программа примерная:

Program lab2;
Uses CRT;
Var a,b,h,Sum,x_const,x_var,f,Result:Re al;
K,N,i:Integer;

BEGIN
Clrscr;
Write('Введите число отрезков N= ');
Readln(N);
a:=1;
b:=4;
Writeln;
Writeln('Введите нижний предел a= ',a:0:1);
Writeln;
Writeln('Введите верхний предел b= ',b:0:0);
Writeln;
h:=(b-a)/N;
x_const:=a+h/2;
For i:=0 to N-1 do
Begin
x_var:=x_const+h*i;
f:=abs(1-x_var);
Sum:=Sum+f;
End;
Result:=Sum*h;
Writeln('Значение интеграла равно ',Result:8:6);
Readln;
END.

Последний раз редактировалось km77; 01.06.2011 в 00:58.
km77 вне форума Ответить с цитированием
Старый 01.06.2011, 01:00   #2
km77
 
Регистрация: 31.05.2011
Сообщений: 4
По умолчанию

главный вопрос-как задать определенную точность вычислений в программе?
km77 вне форума Ответить с цитированием
Старый 01.06.2011, 12:27   #3
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Код:
writeln(Result:3:3);
Не вариант?
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 02.06.2011, 09:21   #4
KobolD
Форумчанин
 
Регистрация: 10.06.2010
Сообщений: 239
По умолчанию

Цитата:
Сообщение от km77 Посмотреть сообщение
главный вопрос-как задать определенную точность вычислений в программе?
Когда ты считаешь интеграл методом прямоугольников, то задаешься шагом по оси ОХ (он так и называется шаг интегрирования).
Так вот ты считаешь интеграл с шагом h и интеграл с шагом h/2, а потом вычитаешь один интеграл из другого и если полученая разность по модулю меньше твоего eps то считается что ты вычислил интеграл с заданой точностью. Если разность по модулю больше eps то берут шаг в два раз меньше т.е. h=h/2 и повторяют все сначала.
Чтобы слова не расходились с делом, нужно молчать и ничего не делать.
KobolD вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Численное интегрирование(метод Симпсона) (=Hello=) Помощь студентам 1 18.03.2011 23:05
Численное интегрирование. Проблема. nikozavr Общие вопросы C/C++ 8 20.02.2011 15:22
Численное интегрирование abs123 Паскаль, Turbo Pascal, PascalABC.NET 1 26.12.2010 22:43
численное интегрирование методом Симпсона: трудности с блок-схемой smalljoke Помощь студентам 0 26.11.2010 02:34
Численное интегрирование в делфи Ира91 Помощь студентам 0 18.10.2010 21:45