PROGRAM INTEGRATION(INPUT,OUTPUT); VAR ANFANG,ENDE,FLAECHE: REAL; (************* HIER INTEGRAND DEFINIEREN **************) FUNCTION F(X: REAL): REAL; BEGIN F := SIN(X) END; (******************************************************) FUNCTION INTEGRAL(A,B: REAL): REAL; CONST X1=0.148874338982; C1=0.295524224715; X2=0.433395394129; C2=0.269266719310; X3=0.679409568299; C3=0.219086362516; X4=0.865063366689; C4=0.149451349151; X5=0.973906528517; C5=0.066671344309; VAR DX, XM: REAL; BEGIN DX := (B-A)/2; XM := (A+B)/2; INTEGRAL := ( C1*( F(XM+X1*DX) + F(XM-X1*DX) ) + C2*( F(XM+X2*DX) + F(XM-X2*DX) ) + C3*( F(XM+X3*DX) + F(XM-X3*DX) ) + C4*( F(XM+X4*DX) + F(XM-X4*DX) ) + C5*( F(XM+X5*DX) + F(XM-X5*DX) ) ) * DX END (* INTEGRAL *); BEGIN WRITELN("B E S T I M M T E S I N T E G R A L"); WRITELN; WRITE("INTERVALLGRENZEN"); READ(ANFANG,ENDE); FLAECHE := INTEGRAL(ANFANG,ENDE); WRITELN; WRITELN("WERT DES INTEGRALS: ", FLAECHE :18:10) END.