| 1 | PROGRAM INTEGRATION(INPUT,OUTPUT); |
| 2 | |
| 3 | VAR ANFANG,ENDE,FLAECHE: REAL; |
| 4 | |
| 5 | |
| 6 | (************* HIER INTEGRAND DEFINIEREN **************) |
| 7 | FUNCTION F(X: REAL): REAL; |
| 8 | BEGIN |
| 9 | F := SIN(X) |
| 10 | END; |
| 11 | (******************************************************) |
| 12 | |
| 13 | |
| 14 | |
| 15 | FUNCTION INTEGRAL(A,B: REAL): REAL; |
| 16 | |
| 17 | CONST X1=0.148874338982; C1=0.295524224715; |
| 18 | X2=0.433395394129; C2=0.269266719310; |
| 19 | X3=0.679409568299; C3=0.219086362516; |
| 20 | X4=0.865063366689; C4=0.149451349151; |
| 21 | X5=0.973906528517; C5=0.066671344309; |
| 22 | |
| 23 | VAR DX, XM: REAL; |
| 24 | |
| 25 | BEGIN |
| 26 | DX := (B-A)/2; |
| 27 | XM := (A+B)/2; |
| 28 | INTEGRAL := ( C1*( F(XM+X1*DX) + F(XM-X1*DX) ) + |
| 29 | C2*( F(XM+X2*DX) + F(XM-X2*DX) ) + |
| 30 | C3*( F(XM+X3*DX) + F(XM-X3*DX) ) + |
| 31 | C4*( F(XM+X4*DX) + F(XM-X4*DX) ) + |
| 32 | C5*( F(XM+X5*DX) + F(XM-X5*DX) ) ) * DX |
| 33 | END (* INTEGRAL *); |
| 34 | |
| 35 | |
| 36 | BEGIN |
| 37 | WRITELN("B E S T I M M T E S I N T E G R A L"); |
| 38 | WRITELN; |
| 39 | WRITE("INTERVALLGRENZEN"); READ(ANFANG,ENDE); |
| 40 | FLAECHE := INTEGRAL(ANFANG,ENDE); |
| 41 | WRITELN; |
| 42 | WRITELN("WERT DES INTEGRALS: ", FLAECHE :18:10) |
| 43 | END. |