IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Вычисление определенного интеграла, В который раз...
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 8
Пол: Женский
Реальное имя: Katia

Репутация: -  0  +


Ребят, помогите, пожалуйста, исправить программу.


f1(x)=x*exp(1/3*ln(1+x))

fi=exp(-x);
ksi=sqrt(x*x+1)/(x*x+3)

a1=9; b1=9

С использованием ЭВМ получить таблицу значений функции,вычисленных с точностью Е в точках t(i)=c+ih, где I=0..m, h=(d-c)/m, f2(t,x)= (t/1+x)+sx) (x).
В качестве результата на печать необходимо вывести значение I, число шагов N квадратурной формулы, последовательность значений t(i) и F(t(i)).

Формула трапеций

Цитата
program pr6;
uses crt;
{$f+}
const
a1=1; b1=9; e=0.00001;
s=0.01; a2=0.5; b2=1.5; c=2; d=3; m=10; e1=0.0001;
type func=function (t,x:real):real;
var
n,j,k,i:integer;
x1,x2,t,r:real;

function f1(t,x:real):real;
begin
f1:=x*exp(1/3*ln(1+x));
end;

function fi(x:real):real;
begin
fi:=exp(-x);
end;
function ksi (x:real):real;
begin
ksi:=sqrt(x*x+1)/(x*x+3);
end;

function f2 (t,x:real):real;
begin
f2:=fi(t/(1+x)+s*x)*ksi(x);
end;

procedure int (a,b,e:real; f:func; t:real;var sum:real; var sum1:real);
begin
repeat
k:=k+1;
n:=n*2;
sum1:=sum;
sum:=0;
for j:=1 to n do
begin
x1:=a+((b-a)/n)*(j-1);
x2:=a+((b-a)/n)*j;
sum:=sum+((f(t,x1)+f(t,x2))/2)*(b-a)/n;
end;
until abs(sum-sum1)<e;
end;

var s1,s2:real;
begin
clrscr;
n:=1;
k:=0;
s1:=((f1(t,b1)+f1(t,a1))/2)*(b1-a1);
int (a1,b1,e,f1,1,s1,s2);
writeln('I=',s2:2:6,' chislo shagov-',k,' proverka ',s2-s1:1:6);
writeln;

for i:=0 to m do
begin
t:=c+i*((d-c)/m);
s1:=((f2(t,b2)+f2(t,a2))/2)*(b2-a2);
n:=1;
k:=0;
int (a2,b2,e1, f2, t,s1,s2);
writeln('i=',i,' t(i)=',t:2:6,' F(t(i))=',s1:2:6,' chislo shagov-',k);
end;
readkey;
end.



Почему выделенная часть нерациональна????
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 19.05.2024 23:50
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name