Metodos Numericos Final
Faculdade de Engenharia Elétrica
Métodos Numéricos
Professor: José Claudinei Ferreira
Auna: Isabela Curado Nehme - Matrícula: 11311EEL001
Universidade Federal de Uberlândia
Maio, 2014
Método da Bissecção
Primeiramente, plota-se um gráfico através de um programa computacional que indica que o valor que x assume para satisfazer a equação f(x) = 0 está no intervalo [16, 16.5], que será o intervalo utilizado para a aplicação do método.
Como exemplo da aplicação desse método, a tabela abaixo contem as três primeiras iterações:
Outra forma de aplicar esse método é através de um programa em C, como pode ser visto a seguir.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
double Ak = 0, Bk = 0, Xk = 0, fAk = 0, fBk = 0, fXk = 0, E = 0; //Declaração das variáveis int k = 0, cont = 0; printf("Insira o intervalo a ser utilizado: "); scanf("%lf%lf", &Ak, &Bk); printf("\n"); printf("Insira o valor a ser utilizado como precisao: "); scanf("%lf", &E); printf("\n\n");
system("cls"); do { Xk = (Ak + Bk)/2.; //Segundo a teoria do Método da Bissecção, o cálculo de Xk é feito através da média do intervalo [Ak, Bk] fAk = (900- Ak*Ak)*((400 - Ak*Ak) - 16*sqrt(400 - Ak*Ak) + 64) - 64*(400 - Ak*Ak); //Cálculo do valor da função para x = Ak fXk = (900- Xk*Xk)*((400 - Xk*Xk) - 16*sqrt(400 - Xk*Xk) + 64) - 64*(400 - Xk*Xk); //Cálculo do valor da função para x = Xk fBk = (900- Bk*Bk)*((400 - Bk*Bk) - 16*sqrt(400 - Bk*Bk) + 64) - 64*(400 - Bk*Bk); //Cálculo do valor da função para x = Bk
if (fAk*fXk < 0) //Caso o produto entre o valor e Ak e Xk sera negativo, eles devem ser invetidos, segundo o laço ao lado Bk = Xk;
else Ak = Xk; k += 1;
printf("Iteracao %d\n", k); printf("Ak = %lf\nB = %f\n\n", Ak, Bk); } while(Bk - Ak >= E || fAk >= E || fBk