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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.11.2011, 21:28   #1
Psychoo
 
Регистрация: 05.11.2011
Сообщений: 5
По умолчанию Интеграл=)

Помогите пожалуйста обнаружить ошибку ,а то вычисляет неправильно или еxitcode выбивает.Заранее благодарен
Вложения
Тип файла: rar lab4.rar (620 байт, 11 просмотров)
Psychoo вне форума Ответить с цитированием
Старый 05.11.2011, 21:31   #2
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Выкладывайте ваш код на форум, ОФОРМИВ ЕГО ТЭГОМ code
Вадим Мошев вне форума Ответить с цитированием
Старый 05.11.2011, 22:18   #3
Psychoo
 
Регистрация: 05.11.2011
Сообщений: 5
По умолчанию

Код:
program lab4;
var a,b,e,h,S1,S2,R,d:real;i,n,k,j,m:integer;p:Char;
function f(x:real):real;
begin
f:=x*x;
end;
begin
 repeat
 writeln('Vvedit a,b,e');
 readln(a,b,e);
 writeln('1-Left rectangular');
 writeln('2-Right rectangular');
 writeln('3-Middleline rectangular');
 writeln('4-Trapeze');
 writeln('5-Parabola');
 writeln('6-BD');
 readln(n);
 m:=1;
 S1:=(b-a)*f(a);
  repeat
  m:=m*2;
  h:=(b-a)/m;
  S2:=0;
  case n of
  1:
  begin
  for i:=0 to m-1 do S2:=S2+f(a+i*h);
  S2:=S2*h;
  end;
  2:
  begin
  for i:=1 to m do S2:=S2+f(a+i*h);
  S2:=S2*h;
  end;
  3:
  begin
  for i:=1 to m do S2:=S2+f(a+i*h-h/2);
  S2:=h*S2;
  end;
  4:
  begin
  for i:=0 to m-1 do S2:=S2+f(a+i*h)+f(a+(i+1)*h);
  S2:=S2*(h/2);
  end;
  5:
  begin
  for i:=0 to m do S2:=S2+k*f(a+i*h);
  S2:=S2*h/3;
  if(i=0)and(i=m)then k:=1;
  if(i mod 2=0)then k:=2 else k:=4;
  end;
  6:
  begin
  d:=h/4;
  for i:=0 to m-1 do
       for j:=0 to 4 do
       begin
       if (j=0) and (j=4) then K:=7;
       if (j=1) and (j=3) then K:=32;
       if (j=2) then K:=12;
       S2:=K*f(a+i*h+j*d);
       end;
  S2:=S2*((2*d)/45);
  end;
end;
R:=abs(S2-S1);
until R<e;
S1:=S2;
writeln(S2:10:7);
writeln(m);
writeln('Repeat Y/N?');
readln(p);
until p='N';
readln;
end.
Psychoo вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Интеграл atenon Свободное общение 10 14.12.2010 19:23
Интеграл bkm03262 Паскаль, Turbo Pascal, PascalABC.NET 1 09.05.2009 14:50
Интеграл StudeHt Паскаль, Turbo Pascal, PascalABC.NET 0 21.04.2009 14:37
ИНТЕГРАЛ(( oblachko Помощь студентам 4 21.01.2009 16:00