Effiziente Loesung polynomialer Gleichungen

Welche Tools bieten die schnellste Lösung von Polynomgleichungen vom Grad größer als 4?

Wo kann man solche beste C/C+±Programme finden?

Am Besten selbst entwickeln und schreiben, dann weiß man ob man das Problem auch verstanden hat und lernt ganz nebenbei noch eine Programmiersprache.

Welche Tools bieten die schnellste Lösung von
Polynomgleichungen vom Grad größer als 4?

Wo kann man solche beste C/C+±Programme finden?

moin moin

meine Lösung:

#ifndef Polynomial_h
#define Polynomial_h

class Polynomial
{
public:
Polynomial ();
Polynomial (const Polynomial &amp:wink:;
Polynomial (short nTerms);

~Polynomial ();

const Polynomial & operator= (const Polynomial &amp:wink:;

const Polynomial operator+ (const Polynomial &amp:wink: const;
const Polynomial operator+ (double) const;
friend const Polynomial operator+ (double, const Polynomial &amp:wink:;

const Polynomial operator- (const Polynomial &amp:wink: const;
const Polynomial operator- (double) const;
friend const Polynomial operator- (double, const Polynomial &amp:wink:;

const Polynomial operator* (const Polynomial &amp:wink: const;
const Polynomial operator* (double) const;
friend const Polynomial operator* (double, const Polynomial &amp:wink:;

double setTerm (short term, double coefficient);
double getTerm (short term) const;

double evaluate (double x) const;

friend ostream & operator
#include
using namespace std;

#include „Polynomial.h“

int main ()
{
Polynomial tmp1;
Polynomial tmp2;

tmp1.setTerm(1,1);
tmp1.setTerm(0,2);

tmp2.setTerm(5,2);
tmp2.setTerm(2,1);
tmp2.setTerm(1,2);
tmp2.setTerm(0,4);

cout
#include
#include
using namespace std;

#include „Polynomial.h“

//constructor
Polynomial:olynomial()
{
mnTerms = 3;
mpCoefficients = new double[mnTerms];
}
// copy constructor
Polynomial:olynomial(const Polynomial &x)
{
mnTerms=x.mnTerms;
mpCoefficients=new double [mnTerms];
for (int i=0;i=0)
{
mnTerms=nTerms;
mpCoefficients=new double[mnTerms];
for(int i=0;ibiggest)
biggest=rhs.mnTerms;
Polynomial answer(biggest);

for (int i=biggest-1;i>=0;i++)
if ((ibiggest)
biggest=rhs.mnTerms;
Polynomial answer(biggest);

for (int i=biggest-1;i>=0;i++)
if ((ibiggest)
biggest=rhs.mnTerms;
Polynomial answer(biggest);

for (int i=biggest-1;i>=0;i++)
if ((i1;i–)
{
stream 0)
{
stream