Si pero eso depende de la ecuación, pero en un ejemplo que es x^4 - 2x^2 + 3x -5 si sustituyes x evaluada en 0 te debe de dar -5 entonces te deberia de decir xp = 0 y fxp = -5y para xp = 2 fxp = 9Pero no me da nada de eso
#include <cstdlib>#include <iostream>#include <math.h>using namespace std;int main(int argc, char *argv[]){ int x6, x5, x4, x3, x2, x, c; double z1=0, z2=0, xp=0, xn=0, xcal; cout << "Bienvenido" <<endl << endl; cout << "Recuerde que su ecuacion es de la siguiente manera" << endl; cout << "X^5 + X^4 + X^3 + X^2 + X + C = 0" << endl; cout << "Introduzca los coeficiente de X^5" << endl; cin >> x5; // Se introduce el coeficiente de X^4 cout << "Introduzca los coeficiente de X^4" << endl; cin >> x4; // Se introduce el coeficiente de X^4 cout << "Introduzca los coeficiente de X^3" << endl; cin >> x3; // Se introduce el coeficiente de X^3 cout << "Introduzca los coeficiente de X^2" << endl; cin >> x2; // Se introduce el coeficiente de X^2 cout << "Introduzca los coeficiente de X" << endl; cin >> x; // Se introduce el coeficiente de X cout << "Introduzca los coeficiente de C" << endl; cin >> c; // Se introduce el coeficiente de c cout << "Su ecuacion es la siguiente? "<< endl; cout << "(" << x5<<"X^5) + (" << x4<<"X^4) + ("<< x3 <<"X^3) + ("<< x2 << "X^2) + ("<< x <<"*x) + " <<"( " <<c << " )"<< endl << endl; z1 = (x5*pow(xp,5))+(x4*pow(xp,4)) + (x3*pow(xp,3)) + (x2*pow(xp,2)) + (x*xp) + c; for(xp=0;z1<0;xp++){ z1 = (x5*pow(xp,5))+(x4*pow(xp,4)) + (x3*pow(xp,3)) + (x2*pow(xp,2)) + (x*xp) + c; } cout << "Xp = " << xp << endl; cout << "F(xp) = " << z1 << endl << endl; z2 = (x5*pow(xn,5)) + (x4*pow(xn,4)) + (x3*pow(xn,3)) + (x2*pow(xn,2)) + (x*xn) + c; for(xn=0;z2>0;xn--){ z2 = (x5*pow(xn,5)) + (x4*pow(xn,4)) + (x3*pow(xn,3)) + (x2*pow(xn,2)) + (x*xn) + c; } cout << "Xn = " << xn << endl; cout << "F(xn) = " << z2 << endl << endl; xcal = xn + ((xp-xn)/2); cout << "Xcalc es: " << xcal << endl; system("PAUSE"); return EXIT_SUCCESS;}
#include <cstdlib>#include <iostream>#include <math.h>using namespace std;int main(int argc, char *argv[]){ Biseccion: char res, res2; int x6, x5, x4, x3, x2, x, c, it, cont = 0, ni=0; double z1=0, z2=0, z3=0, xp=-1, xn=5, xcal, prec, xm, va; cout << "\t***Bienvenido a este excelente programa para resolver " << endl; cout << "\t\tecuaciones por el metodo de biseccion***" <<endl << endl; do{ cout << "Introduzca el numermo maximo de iteraciones" << endl; cin >> it; // Se introduce el coeficiente de c cout << "Recuerde que su ecuacion es de la siguiente manera" << endl; cout << "X^5 + X^4 + X^3 + X^2 + X + C = 0" << endl; cout << "Introduzca los coeficiente de X^5" << endl; cin >> x5; // Se introduce el coeficiente de X^4 cout << "Introduzca los coeficiente de X^4" << endl; cin >> x4; // Se introduce el coeficiente de X^4 cout << "Introduzca los coeficiente de X^3" << endl; cin >> x3; // Se introduce el coeficiente de X^3 cout << "Introduzca los coeficiente de X^2" << endl; cin >> x2; // Se introduce el coeficiente de X^2 cout << "Introduzca los coeficiente de X" << endl; cin >> x; // Se introduce el coeficiente de X cout << "Introduzca los coeficiente de C" << endl; cin >> c; // Se introduce el coeficiente de c system("cls"); cout << "Su ecuacion es la siguiente (S/N)? "<< endl; cout << "(" << x5<<"X^5) + (" << x4<<"X^4) + ("<< x3 <<"X^3) + ("<< x2 << "X^2) + ("<< x <<"*x) + " <<"( " <<c << " )"<< endl << endl; cin >> res;}while(res != 's'); //PROCESO PARA BUSCAR NUMEROS NEGATIVOS Y POSITIVOS z1 = (x5*pow(xp,5))+(x4*pow(xp,4)) + (x3*pow(xp,3)) + (x2*pow(xp,2)) + (x*xp) + c; do{ xp++; z1 = (x5*pow(xp,5))+(x4*pow(xp,4)) + (x3*pow(xp,3)) + (x2*pow(xp,2)) + (x*xp) + c; }while(z1<0);// IMPRIME LOS VALORES DE XP Y Xcalc cout << "Xp = " << xp << endl; cout << "F(xp) = " << z1 << endl << endl; z2 = (x5*pow(xn,5)) + (x4*pow(xn,4)) + (x3*pow(xn,3)) + (x2*pow(xn,2)) + (x*xn) + c; do{ xn--; z2 = (x5*pow(xn,5)) + (x4*pow(xn,4)) + (x3*pow(xn,3)) + (x2*pow(xn,2)) + (x*xn) + c; }while(z2>0); // IMPRIME LOS VALORES DE Xn Y Xcalc cout << "Xn = " << xn << endl; cout << "F(xn) = " << z2 << endl << endl; xcal = xn + ((xp-xn)/2); cout << "Xcalc es: " << xcal << endl; //SE EMPIEZAN A CALCULAR LOS XCALC z3 = (x5*pow(xcal,5)) + (x4*pow(xcal,4)) + (x3*pow(xcal,3)) + (x2*pow(xcal,2)) + (x*xcal) + c; cout << "Z3 es: " << z3 << endl;//SI DA UN VALOR NEGATIVO LO HACEMOS POSITIVO va = z3; if(z3 < 0){ va = z3 * -1; } ni = 0; cout << "Iteracion Num: "<< ni << endl << endl; do{ cont ++; if(va > .000001){ if(z3 < 0){ xn = xcal; // cambia la xcal en su respectivo xn o xp } //cierre de if xcal else if(z3 > 0){ xp = xcal; // cambia la xcal en su respectivo xn o xp } // cierre de else cout << "Xp = " << xp << endl; cout << "Xn = " << xn << endl; xcal = xn + ((xp-xn)/2); cout << "Xcalc es: " << xcal << endl; z3 = (x5*pow(xcal,5)) + (x4*pow(xcal,4)) + (x3*pow(xcal,3)) + (x2*pow(xcal,2)) + (x*xcal) + c; cout << "Z3 es: " << z3<< endl; if(z3 < 0){ va = z3 * -1;} ni ++; cout << "Iteracion Num: "<< ni << endl << endl;} //cierre de if else{ cout << "*** :) Su resultado final es: " << xcal << " :) ***" << endl<< endl; cout << "Desea realizar otra operacion (S/N)? "<< endl<<endl;cin >> res2; system("cls");if(res2 == 's'){ goto Biseccion; } cout << " *** Gracias por haber usado este programa vuelva pronto *** " << endl << endl; cout << " *** Created bye Ing. Angel A. Magallon Carrillo. *** " << endl << endl; system("PAUSE"); return EXIT_SUCCESS; } //cierre de else }while(cont <= it-1); //cierre de whilecout<<"Su ecuacion NO tiene solucion busque por otro metodo o mas iteraciones"<<endl<<endl;cout << "Desea realizar otra operacion (S/N)? "<< endl;cin >> res2;system("cls");if(res2 == 's'){ goto Biseccion; } system("cls"); cout << " *** Gracias por haber usado este programa vuelva pronto *** " << endl << endl; cout << " *** Created by Thenewaprentice. *** " << endl << endl << endl << endl << endl << endl; cout << "Todos los derechos estan reservados por la persona creadora" << endl; system("PAUSE"); return EXIT_SUCCESS;}