На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Название темы должно быть информативным !
Прежде чем задать вопрос, воспользуйтесь Поиском. и проверьте в FAQ (ЧАВО) Паскаля
Чтобы получить вразумительный ответ, подробно опишите проблему: что надо сделать, что не получается и номер ошибки (если есть), которую выводит компилятор.
Для вставки кода ваших программ используйте, пожалуйста, кнопку СODE=pas или выпадающий список СODE для других языков (подсветка синтаксиса).
[!] Как правильно задавать вопросы | Руководство по языку B.Pascal 7 & Objects/LR | Borland Pascal. Руководство пользователя
Модераторы: volvo877
  
> Интеграл
    По заданым вещественным числам а, b (a<b) вычислить  
     
    f c индексом 1=корень из (2 в степени x - 1)                                                              a с индексом 1=0.2; b с индекосм 1=1.0  
    f с индексом 2=(arcsin корень из X)/(x*корень из 1-X)                                                  a с индексом 2=0.2; b с индексом 2=0.3  
     
    Приближенное значение интеграла определить по формуле прямоугольника с заданной точностью eps. Вычисление интеграла оформить в виде ф-ции  
    integr(x, y, e:real;  
                    function f:real):real, где X,y- границы интервала;e-точность вычисления интеграла; f- имя подинтегральной функции!  
      И не стыдно тебе, такие пошлые темы задавать!!!
      Вот прога, считает по прямоугольнику и по методу Симпсона - это гораздо лучше прямоугольника, т.к. "сходится" быстрее и точнее. Конечно, прога не оптимал..
      Если цель сдать преподу метод прямоугольника, то это просто очень куево, что Вы не могете сами...

      ExpandedWrap disabled
        uses crt;
         
        Function f(x : extended) : extended;
        begin
            f:=-sqr(x);
        end;
         
        Function Calc_Rectangle(a, b, toch : extended) : extended;
        var
           tmp,h,Result,x : extended;
        begin
             Result:=0;
             x:=a;
             h:=toch;
             repeat
                   x:=x+h;
                   result:=result+(h)*(f(x));
             until x>b;
             Calc_Rectangle:=Result;
        end;
         
        Function Calc_Simps(a, b, toch : extended; StepCnt : Longint) : extended;
        var
           L,i : longint;
           Result,T,Step,tmp : extended;
        begin
             Result:=0;
             repeat
                   tmp:=Result;
                   Result:=f(a);
                   Step:=(b-a)/StepCnt;
                   t:=a+Step;
                   L:=(StepCnt div 2)-1;
                   For i:=1 to L do
                   begin
                        Result:=Result+4*f(t);
                        t:=t+Step;
                        Result:=Result+2*f(t);
                        t:=t+Step;
                   end;
                   Result:=Step*(Result+4*f(b-step)+f(b))/3;
                   StepCnt:=StepCnt*2;
                   Tmp:=abs(tmp-result);
             until tmp<=Toch;
             Calc_Simps:=Result;
        end;
         
        begin
             clrscr;
             { Calc_Simps(a, b, toch : real; StepCnt : Longint)
               Параметры процедуры Calc_Simps:
               a, b    - пределы интегрирования (нижний и верхний соотв.)
               toch    - точность метода
               StepCnt - начальное число шагов }
             writeln('Методом Симпсона: ',Calc_Simps(-10,10,1E-5,10):4:4);
             writeln('Методом прямоугольника: ',Calc_rectangle(-10,10,1E-3,10):4:4);
        end.


      может  быть чо не так, сам не пробовал, не знаюю.
      Сообщение отредактировано: romtek -
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,1793 ]   [ 15 queries used ]   [ Generated: 11.12.24, 00:39 GMT ]