clear clc p = 4; %ordem do polinomio D = load("-ascii","Table31.txt") m = rows(D); disp("--------------------------- Item (a) ------------------------------------") A=zeros(m,p+1); %tamanho matriz A for i = 1:m for j = 1:p+1 A(i,j) = D(i,1)^(j-1); end end A x = zeros(p+1,1); % vetor solucao b = D(:,2) %Ax=b disp("--------------------------- Item (b) ------------------------------------") disp("Resolvendo usando QR (equacoes normais)") [Q,R] = qr(A); Qtb = Q'*b; disp("solucao:") x1 = R\Qtb disp("--------------------------- Item (c) ------------------------------------") disp("Resolvendo usando a pseudoinversa") x2 = pinv(A)*b disp("--------------------------- Item (d) ------------------------------------") disp("Ver Figura 1") l1=linspace(min(D(:,1)), max(D(:,1)), 500); % eixo x do grafico do polinomio final l2 = 0; for i=1:p+1 l2 = x1(i)*l1.^(i-1) + l2; % eixo y do grafico do polinomio final end plot(D(:,1),D(:,2),"k*", l1,l2,"r-"); % grafico