Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function [] = bissuc(funcao, a, b, erro)
- % paulogp
- % metodo das bisseccoes sucessivas
- %
- % exemplo: bissuc('x^3', -3, 6, 10^-4)
- % a e b sao intervalos
- % formato de saida
- format long
- xx = (b - a)/2;
- f = inline(funcao);
- fa = f(a);
- fb = f(b);
- k = 0;
- if ((fa * fb) > 0)
- disp('Nao existem zeros no intervalo!');
- else
- while (xx > erro)
- c =(a + b)/2;
- fc = f(c);
- k = k + 1;
- % sorte a primeira
- if (fc == 0)
- x = c;
- erro = 0;
- disp(' ');
- disp('Em cheio no alvo!');
- break;
- else
- % procura
- if((fa * fc) < 0)
- b = c;
- fb = fc;
- else
- a = c;
- fa = fc;
- end
- xx =(b - a)/2;
- x =(a + b)/2;
- end
- end
- % saida de valores
- disp(' ');
- disp(['x= ' mat2str(x)]);
- disp(' ');
- disp(['k= ' mat2str(k)]);
- end
- disp(' ')
- % apaga todas as variaveis
- clear;
- disp(' ');
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement