Método de La Regla Falsa

8
Diagrama de flujo del método de la regla falsa. x 1 , x 2 , Eps, y 1 = f(x 1 ) y 2 = f(x 2 ) y 1 *y 2 > 0.0 “Error en el intervalo Return (0) i x 1 x 2 x 3 x i+1 -x i 1 S No

description

c++

Transcript of Método de La Regla Falsa

Diagrama de flujo del mtodo de la regla falsa. Return (0)y1*y2 > 0.0y1= f(x1)y2= f(x2)x1, x2, Eps, nitError en el intervalo

NoSi

i x1 x2 x3 xi+1-xi y1 y2 y3 ea

1

1

y1==y2

NoSi

Return (0)El proceso converge res= resy3=f(x3)x3= x2-[y2*(x1-x2)/(y1-y2)]res=x3y3==0Return (0)No se puede dividir por cero

NoSi

2

543Return (0)y1==y2y1= f(x1)y2= f(x2)x4=x3for (i=2; i 01 x1 x2 x3 xi+1-xi y1 y2 y3 ea

i=12

NoSi

NoSi

5x3= x2-[y2*(x1-x2)/(y1-y2)]y3=f(x3)

y3==0

NoSi2 x1 x2 x3 xi+1-xi y1 y2 y3 ea

ea= |(x3-x4)/(x3)|*100

El proceso converge res= resReturn (0)res=x3

|x3-x4| 0

SiNox4=x3x2=x3x1=x3

4

3

|x3-x4|>Eps

SiNo

finEl sistema no converge

Cdigo de programacin del mtodo de la regla falsa#include #include #include #include #include

using namespace std;

#define f(x)(4.0*pow(x,3)-30.0*pow(x,2)+70.0*x-50.0)

main(){int i,nit;float x1,x2,x3,x4,y1,y2,y3,eps,ea,res;

printf("Programa para encontrar la raiz usando la regla falsa\n");printf("\n");printf("x1= ");scanf("%f",&x1);printf("x2= ");scanf("%f",&x2);printf("eps= ");scanf("%f",&eps);printf("nit= ");scanf("%f",&nit);printf("\n");

y1=f(x1);y2=f(x2);

if (y1*y2>0){ cout