code 34439; procedure JACOBNBNDF(N, LW, RW, X, F, JAC, I, DI, FUNCT); value N, LW, RW; integer I, N, LW, RW; real DI; array X, F, JAC; procedure FUNCT; begin integer J, K, L, U, T, B; real AID, STEPI; L:= 1; U:= LW + 1; T:= RW + 1; B:= LW + RW; for I:= 1 step 1 until N do begin array F1[L:U]; STEPI:= DI; AID:= X[I]; X[I]:= AID + STEPI; FUNCT(N, L, U, X, F1); X[I]:= AID; K:= I + (if I <= T then 0 else I - T) * B; for J:= L step 1 until U do begin JAC[K]:= (F1[J] - F[J]) / STEPI; K:=K + B end; if I >= T then L:= L + 1; if U < N then U:= U + 1 end end JACOBNBNDF; eop