Programación General > C/C++

 fallo raro

(1/1)

meana:
hola,  hoy he estado haciendo una practica de la universidad y al compilar el codigo todo bien no me da ningun problema, pero a la hora de ejecutarlo, depues de que el programa hace todos los calculos, que por cierto me los devuelve de forma correcta, cuando me sale lo de presione una tecla para continuar el programa casca, pero sin embargo si el programa lo ejecuto desde la terminal de windows no me da ningun tipo de problema. el codigo del programa es este, alguien me puede echar una mano?¿

--- Código: C++ ---#include <iostream>#include <vector>#include <cmath> using namespace std; //maximo para lamdadouble maxl (vector<double>&p){    double max1;    for (int i=0; i<p.size()-1; i++){ //calcula el maximo coeficiente del polinomio sin tener en cuenta al coeficiente director        if(abs(p[i])>max1) max1=abs(p[i]);    }    return max1;}//maximo para betadouble maxb (vector<double>&p){    double max2;    for (int i=1; i<=p.size(); i++){ //calcula el maximo coeficiente del polinomio sin tener en cuenta el termino independiente        if(abs(p[i])>max2) max2=abs(p[i]);          }    return max2;}//cambios de signoint cambios_signo (vector<double>&p){    int cont=0;    for(int i=0; i<p.size()-1; i++){        if(p[i]<=0 && p[i+1]>0 || p[i]>0 && p[i+1]<=0) cont++;    }    return cont;}  int main () {         int n;    cout << "introduce el grado del polinomio" << endl;    cin >> n;    vector<double>polinomio(n+1);    for (int i=0; i<n+1; i++){            cout << "a(" << i << ") = ";            cin >> polinomio[i];            cout << "i = " << i << ", polinomio["<<i<<"] = " << polinomio[i] << endl;        }    int cont=0;    while(polinomio[0]==0){        for (int i=0; i<=n; i++){            polinomio[i]=polinomio[i+1];        }     cont++;       }    polinomio.resize((polinomio.size())-cont);    vector<double>polinomio_negativo(n+1);    for (int i=0; i<=polinomio.size(); i++){        if (i%2==0){            polinomio_negativo[i]=polinomio[i];        }        else polinomio_negativo[i]=polinomio[i]*(-1);    }     //acotacion de raices        double lamda = maxl (polinomio)/abs(polinomio[polinomio.size()-1]);    double beta = maxb (polinomio)/abs(polinomio[0]);    cout << "lamda = " << lamda << endl;    cout << "beta = " << beta << endl;    cout <<  (1/(1+beta)) << " <= |z| <= " << 1+lamda << endl;    cout << "las cotas son" << endl;    cout << "C.I.R.P = " << (1/(1+beta)) << "   " << "C.S.R.P = " << 1+lamda << endl;    cout << "C.I.R.N = " << -(1+lamda) << " " << "C.S.R.N = " << -(1/(1+beta)) << endl;        //descartes (cambios de signo)    cout << "el numero de raices positivas de p(x) es menor o igual en un numero par a " << cambios_signo(polinomio) << endl;    cout << "el numero de raices negativas de p(x) es menor o igual en un numero par a " << cambios_signo(polinomio_negativo) << endl;     //hua    int c=1;    while((polinomio[c]*polinomio[c] > polinomio[c-1]*polinomio[c+1]) && (c<n+1)){        c++;    }    cout << "Para k = " << c << " se verifica que a(k)^2<=a(k-1)*a(k+1) por lo que p(x) tiene al menos un par de raíces complejas conjugadas" << endl;             system ("PAUSE");       return 0;}  por cierto los datos con los que hago la prueba son grado del polinomio 6 y coeficientes -1, 1, 2, 8.3, -3, 0, 5

Navegación

[0] Índice de Mensajes

Ir a la versión completa