En cálculo numérico, el método de la regula falsi (regla del falso) o falsa posición es un método iterativo de resolución numérica de ecuaciones no lineales. El método combina el método de bisección y el método de la secante.
 #include<iostream>
#include<cmath>//biblioteca para poder utilizar la funcion pow() using namespace std; 
/*para encontrar una raíz de la ecuación f(x)=0 analíticamente, proporcionar la función
F(X) 
DATOS:
-->a Y b que forman un intervalo, en donde se halla una raíz
-->TOL criterio de convergencia//la tolerancia
-->EXACTITUD criterio de exactitud
-->MAXIT número máximo de iteraciones 
RESULTADOS:
-->X la raiz aproximada o mensaje de falla
*/
//función de la cual se quiere hallar una raiz double F(double x){
    
    return 3*pow(x,2)+4*x-7;//en este caso usamos una función cuadratica} double falsa_posicion(double a, double b,int MAXIT,double TOL,double EXACTITUD){
    int cont=1;
    double fa=F(a);
    double fb=F(b);
    double c;//punto entre a y b
        double fc;//F(c)
        while(cont<MAXIT){
        c=(a*F(b)-b*F(a))/(F(b)-F(a));//formula de la falsa posicion
                fc=F(c);
        if(abs(fc)<=EXACTITUD){
            
            return c;//raiz encontrada        }
        if(abs(b-a)<=TOL){
            c=(a+b)/2;
            return c;//raiz encontrada        }
        
        if(fc*fb>0)
            a=c;
        if(fa*fc>0)
            b=c;
        cont=cont+1;
    
    }return c;} int main (int argc, char *argv[]) {
    //exactitud y tolerancia cercanas a cero
    cout<<falsa_posicion(0,2,15,0.00000005,0.0000005);//retorna la raiz
        return 0;
}
 
 
 
 
 

Buenos dias!! Alguien quien me pueda ayudar , es para mi examen. Tengo que escribir una funcion en programacion c++ que calcule la raiz de y=x^3+2x^2+10x-20 por el metodo de falsa posicion.
ResponderBorrar