Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: noob007 en 8 Diciembre 2015, 17:51 pm



Título: AYUDA! Polinomios de segundo grado
Publicado por: noob007 en 8 Diciembre 2015, 17:51 pm
Hola a todos, soy nuevo en el foro y me preguntava si me podrian ayudar. Mi pràctica es la siguiente:

Polinomios de segundo grado

Hay que crear dos clases para la gestión de polinomios de segundo grado.
Clase Complejo
Tiene que contener dos *float, la parte real e imaginaria del complejo, guardadas de manera privada. Se tiene que construir a partir de dos float, uno (el real, el imaginario es cero) o ninguno (cero a ambos). Método Siete, con dos float. Método Ver, que mostrará los dos valores.

Clase Poli2
Tiene que contener los tres coeficientes del polinomio p(x)=ax^2+bx+c en la parte privada.
Métodos:
• Dos constructoras. Con tres y cero parámetro float. Sin parámetros, todos los
coeficientes se ponen a cero.
• Ver. Muestra el propio Poli2 (con dos decimales)
• Evaluar. Pasando como parámetro el float w, devuelve p(w).
• ResoldreR. Devuelve un booleano indicando si la ecuación basada en el polinomio tiene raíces reales. Si es el caso también devuelve dos float, pasados por referencia, con las raíces.
• Resolver. Devuelve dos Complejo, pasados por referencia, con las raíces de la ecuación.
• Derivar. Deriva el propio Poli2.
• Operator +. Suma el propio Poli2 con otro de pasado y devuelve el resultado.
• Operator *. Multiplica los coeficientes del propio Poli2 por un float.
• Descomponer. Devuelve -pasando por referencia- dos Poli2 de grado 1, tales que
multiplicados den el propio Poli2. También devuelve un boolean indicando si se puede hacer
la descomposición real.

Si añadimos un main como el que hay a continuación, el programa tendría que mostrar los resultados comentados.

Poli p(2,5,3);
Poli q(5,-2);
Poli r;
Complex c1,c2;
float f,g;
p.Veure();                        // [2.00 5.00 3.00]
q.Veure();                        // [5.00 -2.00 0.00]
r.Veure();                        // [0.00 0.00 0.00]
f=p.Avaluar(3.1);
cout<<f<<endl;                   // 37.72
p.ResoldreR(f,g);
cout<<f<<" "<<g<<endl;       // -1 -1.5
r=p+q;
r.Veure();                        // [7.00 3.00 3.00]
q*1.5;
q.                                   // [7.50 -3.00 0.00]
q.Derivar();
q.Veure();                         // [0.00 15.00 -3.00]
q.Set(2,6,4);
if(q.ResoldreR(f,g))
 cout<<f<<" "<<g<<endl;                      // -1 -2
else
 cout<<"No solucio real\n";
q.Set(3,1,2);
q.ResoldreI(c1,c2);
c1.Veure();                         // (-0.17 0.80)
c2.Veure();                         // (-0.17 -0.80)
if(p.Descomposar(q,r)){
 q.Veure();                         // [0.00 1.00 1.00]
 r.Veure();                          // [0.00 1.00 1.50]
 }
else
 cout<<"No descomposable\n";



Título: Re: AYUDA! Polinomios de segundo grado
Publicado por: avesudra en 8 Diciembre 2015, 19:43 pm
¿Y en qué te tenemos que ayudar exactamente?

Un saludo.


Título: Re: AYUDA! Polinomios de segundo grado
Publicado por: noob007 en 8 Diciembre 2015, 22:49 pm
en resolver el problema


Título: Re: AYUDA! Polinomios de segundo grado
Publicado por: MAFUS en 8 Diciembre 2015, 23:09 pm
La cosa es que planteas el problema, muestras lo que tienes realizado hasta el momento y especificas dónde te has quedado trabado.
La gente te va a resolver dudas puntuales, no a hacer la tarea.  :¬¬


Título: Re: AYUDA! Polinomios de segundo grado
Publicado por: noob007 en 9 Diciembre 2015, 00:43 am
si alguien me pudiera dar una classe rapida....