Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: piete2 en 5 Marzo 2015, 20:43 PM

Título: Multiplicar polinomios y derivada
Publicado por: piete2 en 5 Marzo 2015, 20:43 PM
Hola amigos, hoy les traigo un reto, mi profesor nos ha mandado multiplicar dos polinomios y hacerles sus derivadas. El problema, no tengo ni idea de hacerlo. Aquí está lo que llevo hecho:

Código (java) [Seleccionar]

package polinomio

public class Poli {
        private double coef[];
    public Poli(){
       
    }
    public Poli(double c[]){
        coef=new double [c.length];
        for (int i = 0; i < c.length; i++) {
            coef[i]=c[i];
        }
       
    }
    public Poli (int g, double c){
        coef=new double [g+1];
        for (int i = 0; i <coef.length ; i++) {
            coef[i]=c;
        }
       
    }
    public Poli (Poli p){
        this(p.coef);
       
    }
    public Poli(int g){
        this(g,1);
       
    }
    public Poli(double c){
        this(0,c);
    }
    public int ObtenerGrado(){
        return coef.length-1;
    }
    public double obtenCoef(int t){
        return coef[t];
    }
    public double[] obtenTodosLosCoef(){
        double aux[]=new double[coef.length];
        for (int i = 0; i<coef.length; i++) {
            aux[i]=coef[i];}
        return aux;
    }
       
    public double obtenCoefInd(){
            return 0;
       
    }
    public void negado(){
        for (int i = 0; i < coef.length; i++) {
            coef[i]=-coef[i];
        }
    }
    public void suma(Poli b){
        Poli aux= new Poli(b);
       
        if (aux.coef.length>=coef.length) {
            for (int i = 0; i < coef.length; i++) {
                aux.coef[i]+=coef[i];
            }
        }
        else{
            for (int i = 0; i < aux.coef.length; i++) {
                coef[i]+=aux.coef[i];
            }
        }
       

       
       
    }
    public Polinomio suma2 (Poli b){
        Poli aux= new Poli(b);
        Poli aux2= new Poli(b);
        if(aux.coef.length>=aux2.coef.length){
            for (int i = 0; i < aux2.coef.length; i++) {
                aux2.coef[i]+=coef[i];
            }
        }
        else{
            for (int i = 0; i < aux2.coef.length; i++) {
                coef[i]=aux2.coef[i];
            }
        }
           
            return null;
       
    }
    public Poli resta(Poli p){
        Poli aux=new Poli (p);
        aux.negado();
        suma(aux);
        return aux;
       
       
    }
    public void multiplicar (Poli p){
        Poli aux=new Poli(p);
        for (int i = 0; i < coef.length; i++) {
           
           
        }
       
    }
    public void derivada(){
       
    }
    public double evalua(double x){
        return 0;
    }
    public void ponCoef(int t,double c){
       
    }
   
    @Override
    public String toString(){
       String aux= "";
       
        for (int i = 0; i < this.coef.length; i++) {
            if(coef[i]!=0){
               
                aux=aux+"("+coef[i]+"x^"+i+")"+" + ";
            }
        }
       
    return aux;
}
   
}



Y aquí el main:

Código (java) [Seleccionar]

package polinomio;



public class Polinomio {


   
   
   
    public static void main(String[] args) {
       
        Poli a,b,c;
        double datos1[]={3,1,5,6,9};
        double datos2[]={8,4,-5,9,-8};
        Polinomio p=new Polinomio();
        a=new Poli(datos1);
        b=new Poli(datos2);
        c=new Poli();
       
        //System.out.println("Polinomio a "+a);
        //System.out.println("Polinomio b "+b);
       // System.out.println("Polinomio c "+c);
        double datos3[]=b.obtenTodosLosCoef();//Para el obtenerTodosLosCoef
        for (int i = 0; i < datos3.length; i++) {
           // System.out.print(datos3[i]+" ");
        }
        b=new Poli(a);
        b.negado();
        a.suma(b);
        System.out.println(a);
        System.out.println(b);
       
       
       
       
    }

}


Sinceramente, llevo más de una semana con todo esto y ya estoy saliendo loco, no sé como hacer la multiplicación y la derivada, si alguien me pudiera ayudar se lo agradecería. Gracias de verdad.
Título: Re: Multiplicar polinomios y derivada
Publicado por: Usuario Invitado en 5 Marzo 2015, 21:15 PM
Aquí tienes un ejemplo de multiplicar polinomios: Multiplicar polinomios con Java (https://www.daniweb.com/software-development/java/threads/419100/multiplication-method-for-multiplying-two-polynomials)