Você está na página 1de 1

clear; clc;

syms x
fprintf('regra do 3/8 de simpson\n');
f(x)=input('digite a função com a variavel x\n');
a=input('informe o valor inicial do intervalo\n');
b=input('informe o intervalo final do intervalo\n');
m=input('quantos pontos?\n');
h=(b-a)/m;%calcular o espaçamento
x(1)=a;
for i=2:m+1
x(i)=x(i-1)+h;%montar o vetor com o espaçamento h apartir do valor inicial até o
valor final
end
Df=diff(f,4);%calcular a derivada 4 para o erro
maior=0;
for z=1:m+1
y=abs(Df(x(z)));
if y>maior;
maior=y;%calcular o maior valor da derivada
end
end
I38S=0;
for j=0:m
if j==0 || j==m
I38S=I38S+((3*h)/8)*(f(x(j+1)));%formula de 3/8 de simpson para a área
else
if mod(j,3)==0
I38S=I38S+((3*h)/8)*(2*f(x(j+1)));%formula de 3/8 de simpson para a área
else
I38S=I38S+((3*h)/8)*(3*f(x(j+1)));%formula de 3/8 de simpson para a área
end
end
end
E38S=(((abs(b-a))*(h^4))/80)*(maior);%calcular o erro
fprintf('O valor da área é:\n %.7f\n',I38S);%imprimir o valor da área
fprintf('e o erro acossiado é:\n %.7f\n',E38S);%imprimir o erro

regra do 3/8 de simpson

Error using input


Cannot call INPUT from EVALC.

Error in simpson3 (line 4)


f(x)=input('digite a função com a variavel x\n');

Published with MATLAB® R2016a

Você também pode gostar