PD: el método sumar, me pide que lo haga de este modo:
Código
[/b]
P_resuesta=P1.Sumar(P2)
Código
#include <iostream> #include <cmath> using namespace std; class Polinomio{ int coeficiente[20]; int grado; public: Polinomio(int _grado=0){ grado=_grado; for(int i=0;i<grado;i++) { coeficiente[i]=0; } }; int Ver_coeficientes(int _i){ return coeficiente[_i]; } void Cambiar_coeficiente(int _c, int _pos); Polinomio Sumar_polinomios(Polinomio p2); int Evaluar(int _x); }; void Polinomio::Cambiar_coeficiente(int _c, int _pos){ coeficiente[_pos]=_c; } Polinomio Polinomio:: Sumar_polinomios(Polinomio p2){ for(int i=0;i<grado;i++) { coeficiente[i]+=p2.Ver_coeficientes(i); //Que deberia retornar? } } int Polinomio::Evaluar(int _x){ int aux=0; for(int i=0;i<grado--;i++) { aux+=coeficiente[i]*(pow(_x,(grado-i))); } aux+=coeficiente[grado]; return aux; } int main(int argc, char *argv[]) { int size; int coeficiente; cout<<"Ingrese el grado del Polinomio: "; cin>>size; Polinomio P(size); /*Carga del polinomio*/ cout<<"Ingrese los coeficientes, de mayor grado a menor "; cin>>coeficiente; int i=0; while(i<size){ P.Cambiar_coeficiente(coeficiente,i); cout<<"Ingrese los coeficientes, de mayor grado a menor "; cin>>coeficiente; ++i; } /*Veamos la carga inicial*/ for(int i=0;i<size;i++) { cout<<P.Ver_coeficientes(i)<<"x^"<<size-i; //Por que no veo el termino independiente? } cout<<endl; /*Evaluemos con un valor x el polinomio*/ int x; cout<<"Ingrese la incognita: "; cin>>x; cout<<P.Evaluar(x); //Obtengo basura, por que? cout<<endl; /*Probemos el metodo sumar Polinomio*/ /* nada*/