Avatar billede jacob_top Nybegynder
03. januar 2005 - 15:20 Der er 1 kommentar og
1 løsning

Opgave i c++

Hej Alle!

Jeg har fået følgende opgave der skal implementeres i c++ som en konsol applikation:

Design og implementer en C++ klasse der kan repræsentere polynomier som fx.

anxn + an-1xn-1 +...+ a0
hvor koefficienterne ai er heltal og x er et reelt tal.
Der skal være funktioner til:

addition
subtraktion
multiplikation
graden af polynomiet
sammenligning af to polynomier (overload operator==)
koefficient ai i polynomiet p tilgås som p[i] (overload operator[])
evaluering af polynomiet for given x værdi (overload operator())
indlæsning (overload operator>>)
udskrivning (overload operator<<)

Klassen skal have:

default constructor
copy constructor
assignment operator
constructor med et argument (a0) for polynomiet a0
constructor med to argumenter (a_n og n) for polynomiet anxn
destructor om nødvendigt

Jeg vil gerne have nogle grundliggende inputs til hvordan den kan løses. Min foreløbige løsningsmetode er, at lave en polynomiumsklasse der indeholder forskellige instanser af en "led" klasse. Et led er således enten "3x" eller "-3x^2".
Ledklassen skal således indeholde en mængde variable, der dels repræsenterer leddet (altså 3) og en anden variabel der repræsenterer graden af polynomiet.

Kommentarer samt løsningsforslag modtages med kyshånd!

Mvh
Jacob
Avatar billede arne_v Ekspert
03. januar 2005 - 19:10 #1
Du skal jo åbenlyst have en Polynomium klasse.

Jeg er ikke helt så overbevist om det smarte i en Led klasse. Men selvfølgelig
kan du lave det.

Du skal også have besluttet dig for om Polynomium skal indeholde et eller
flere simple arrays eller et eller flere STL containere f.eks. vector til
at indeholde led.

Ellers er opgaven jo meget et spørgsmål om at forstå matematikken og så implementere
operator overload metoderne.
Avatar billede arne_v Ekspert
16. januar 2005 - 17:30 #2
OK ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester