function [area, err] = MyIntAlg(f,a,b,n,option) h = (b-a)/n; area = 0; % Left,Mid,Right-pt Rule if (option == 0) || (option == 1) || (option == 2) for k = a:h:b-h area = area + feval(f,k+option/2*h)*h; end elseif option == 3 % Trapezoid Rule area = area + (feval(f,a) + feval(f,b))/2; for k = a+h:h:b-h area = area + feval(f,k); end area = area*h; else % Use Simpson's Rule otherwise x = [a:h:b]; % (n+1)-vector area = area + feval(f,(x(1))); % x(1)=a for k = 2:2:n area = area + 4*feval(f,(x(k))); end for k = 3:2:n-1 area = area + 2*feval(f,(x(k))); end area = h/3*(area + feval(f,(x(n+1)))); % x(n+1)=b end err = abs(area - quad(f,a,b));