// Defina uma função por exemplo: function y=phi(x), y=log(x)+2; endfunction. // Execute a função: [xk] = FixedPoint(phi,1,0.01) function [xk] = FixedPoint(phi,x0,precisao) imax = 100; //Número máximo de iterações err = 100; i=0; //Contador para estimar o número de iterações xold = x0; //Chute Inicial printf('Método do ponto fixo com dado inicial %5.5g e precisão igual a %.10g', x0, precisao); printf('\n| k | x[k] | x[k+1]=phi(x[k]) | ER | \n|======|================|==================|=================|\n'); while (err > precisao && i <= imax) i = i+1; xnew = phi(xold); if (i > 1) err = abs(xnew - xold); // Se for o relativa abs((xnew - xold)/xnew) end printf('| %3d | %12.8f | %12.8f | % 12.6e |\n', i-1, xold, xnew,err); xold = xnew; end endfunction