Polynome

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo,
wir sollen ein Programm schreiebn, dass z.B Polynome addiert:

Erstellen Sie eine Klasse Polynom, die Polynome mit double-Koeffizienten
als Ergebnistyp modelliert. Ein Objekt p der Klasse Polynom soll ¨uber folgende
Objektmethoden verf¨ugen:
• Polynom(double[] k), erzeugt ein neues Polynom
p(x) = k[n]  xn + k[n − 1]  xn−1 + · · · k[1]  x + k[0];
• addiere(Polynom q), addiert zu p das Polynom q;

• multipliziere(Polynom q), multipliziert das Polynom p mit dem Polynom
q;
• ableitung(), liefert die Ableitung des Polynoms p;
• integral(), liefert das Polynom q, f¨ur dass q0(x) = p(x) und q(0) = 0
gilt, also die Stammfunktion q von p mit q(0)=0;
• auswerten(double x), wertet das Polynom p an der Stelle x aus.



folgenden code haben wir schon:

Code:
/**
 * Beschreiben Sie hier die Klasse Polynom.
 * 
 * @author (Ihr Name) 
 * @version (eine Versionsnummer oder ein Datum)
 */
public class Polynom
{
    /**
     * Konstruktor der Klasse Polynom
     */
    
    double[] p;
    public Polynom (double[] k) {
        p=k;
    }
    
    /**
     * Get-Methode, die den Array eines Polynoms
     * zurückgibt
     * 
     * @return p - gibt den Array p eines Polynoms zurück.
     */
    public double[] getArray(){
        return p;
    }
    
    /**
     * Methode die zwei Polynome addiert
     */    
    public void addiere (Polynom q) {
        //Schleife die die Polynome durchläuft n
        double[] qArray = q.getArray();
        for(int i=0; i<p.length; i++)
            p[i] = p[i]+qArray[i];
    }

}


wie kann ich das adiieren so hinbekommen das es auch funktioniert wenn q>p und q<p???



Danke
 

Bleiglanz

Gesperrter Benutzer
erst das maximum der beiden längen bestimmen

dann ein neues array dieser länge füllen mit den summen

dann schaun, ob "oben was null ist" und nochmal ein neues array erstellen das keine "nullen" mehr bei den höchsten potenzen hat

dieses dann p zuweisen
 

Bleiglanz

Gesperrter Benutzer
du musst ein neues array bauen, schon klar?

wenn gradq > gradp, dann kannst du ja die summe nicht in deinem p unterbringen??

also musst du in diesem fall p durch ein neues ersetzen (lang genug)

wenn gradp = gradq, dann könnte es ja sein, dass

3x^2

zu

-3x^2

addiert wird, und ein array 0,0,0

ist nicht so tolll
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen

Ähnliche Java Themen

Neue Themen


Oben