Integral.mws

>    restart;

>    a:=0:b:=1.:        # Интервал

>    eq:=diff(y(t),t)+t;# Ур-е

eq := diff(y(t),t)+t

>    dsolve({eq,y(0)=1},y(t));# Можно решить точно

y(t) = -1/2*t^2+1

>    int(1-t^2/2,t=a..b);# Интеграл от решения (точно)

.8333333333

>    R:=dsolve({eq,y(0)=1},y(t),numeric,output=listprocedure);# Численно интегрируем

R := [t = proc (t) local _res, _dat, _solnproc, _xout, _ndsol, _pars, _i; option `Copyright (c) 2000 by Waterloo Maple Inc. All rights reserved.`; if 1 < nargs then error

>    Y:=eval(y(t),R);

Y := proc (t) local _res, _dat, _solnproc, _xout, _ndsol, _pars, _i; option `Copyright (c) 2000 by Waterloo Maple Inc. All rights reserved.`; if 1 < nargs then error

>    Y(0); #Проверка

1.

>    plot(Y(t),t=a..b); # График

[Maple Plot]

>    N:=100:#Интегрируем методом прямоугольников (можно Симпсоном при желании)

>    dx:=(b-a)/N:

>    INT:=add(dx*Y(i/N),i=1..N);# Интеграл от решения (приближенно)

INT := .8308250000