Polynomial
 
Betöltés...
Keresés...
Nincs egyezés
bme::Polynomial< T > osztálysablon-referencia

#include <polynomial.hpp>

Publikus tagfüggvények

 Polynomial ()
 Default konstruktor.
 
template<typename U>
 Polynomial (U a)
 Konstans polinom.
 
template<typename U, typename V, typename W>
 Polynomial (U a, V b, W c)
 Másodfokú polinom.
 
template<typename U>
 Polynomial (int array_size, const U *array)
 Polinom megadása tömbbel.
 
int deg () const
 Polinom foka.
 
bool isInvalid () const
 Invalid polinom vizsgálata.
 
void setInvalidPoly ()
 Invalid polinom beállítása.
 
const T & getCoef (int deg) const
 Polinom együtthatóinak lekérdezése.
 
const T & operator[] (int deg) const
 Polinom együtthatóinak lekérdezése.
 
void set (int deg, const T &val)
 Polinom együtthatóinak beállítása.
 
void clear ()
 Nullpolinom beállítása.
 
void minimize ()
 Memória felszabadítása.
 
bool isZero () const
 Nullpolinom vizsgálata.
 
void shift (int n=1)
 Shift (X^n)-nel.
 
of (const T &a) const
 Behelyettesítés.
 
operator() (const T &a) const
 Behelyettesítés.
 
Polynomial< T > of (const Polynomial< T > &other) const
 Polinom behelyettesítése.
 
Polynomial< T > operator() (const Polynomial< T > &other) const
 Polinom behelyettesítése.
 
bool operator== (const Polynomial< T > &other) const
 Polinomok egyenlősége.
 
bool operator!= (const Polynomial< T > &other) const
 
bool operator< (const Polynomial< T > &other) const
 Polinomok összehasonlítása.
 
bool operator<= (const Polynomial< T > &other) const
 
bool operator> (const Polynomial< T > &other) const
 
bool operator>= (const Polynomial< T > &other) const
 
Polynomial< T > operator+ (const Polynomial< T > &other) const
 
Polynomial< T > & operator+= (const Polynomial< T > &other)
 
Polynomial< T > operator- () const
 
Polynomial< T > operator- (const Polynomial< T > &other) const
 
Polynomial< T > & operator-= (const Polynomial< T > &other)
 
Polynomial< T > operator* (const Polynomial< T > &other) const
 Polinomok szorzása.
 
Polynomial< T > & operator*= (const Polynomial< T > &other)
 
Polynomial< T > pow (int k) const
 Polinomok hatványozása.
 
Polynomial< T > operator/ (const Polynomial< T > &other) const
 Polinomok osztása.
 
Polynomial< T > & operator/= (const Polynomial< T > &other)
 
Polynomial< T > operator% (const Polynomial< T > &other) const
 Polinomok maradékos osztása.
 
Polynomial< T > & operator%= (const Polynomial< T > &other)
 
void make_monic ()
 Polinom normálása.
 
bool is_monic () const
 

Részletes leírás

template<typename T>
class bme::Polynomial< T >

A Polynomial a T test feletti polinomokat reprezentálja. A polinom maximális fokszáma INT_MAX.

Definíció a(z) polynomial.hpp fájl 19. sorában.

Konstruktorok és destruktorok dokumentációja

◆ Polynomial() [1/4]

template<typename T>
bme::Polynomial< T >::Polynomial ( )
inline

Default konstruktor.

A default konstruktor a 0 polinomot állítja be kezdeti értéknek, ennek egyetlen együtthatója 0, a fokszáma -1.

Definíció a(z) polynomial.hpp fájl 49. sorában.

◆ Polynomial() [2/4]

template<typename T>
template<typename U>
bme::Polynomial< T >::Polynomial ( U a)
inline

Konstans polinom.

Ez a konstruktor a konstans polinomot állítja be a paraméterként megadott konstans együtthatóval.

Paraméterek
aa konstans együttható értéke

Definíció a(z) polynomial.hpp fájl 49. sorában.

◆ Polynomial() [3/4]

template<typename T>
template<typename U, typename V, typename W>
bme::Polynomial< T >::Polynomial ( U a,
V b,
W c )
inline

Másodfokú polinom.

Ez a konstruktor egy másodfokú polinomot állít be a paraméterként megadott együtthatókkal.

Paraméterek
aa másodfokú tag együtthaójának értéke
baz elsőfokú tag együtthaójának értéke
ca konstans együttható értéke

Definíció a(z) polynomial.hpp fájl 49. sorában.

◆ Polynomial() [4/4]

template<typename T>
template<typename U>
bme::Polynomial< T >::Polynomial ( int array_size,
const U * array )
inline

Polinom megadása tömbbel.

Ez a konstruktor a polinom együtthatóit egy tömb elemeire állíja be, a tömb i indexű eleme lesz az i-edfokú tag együtthatója.

Paraméterek
array_sizea tömb mérete, az együtthatók száma
arraaz együtthatókat tartalmazó tömb

Definíció a(z) polynomial.hpp fájl 49. sorában.

Tagfüggvények dokumentációja

◆ clear()

template<typename T>
void bme::Polynomial< T >::clear ( )
inline

Nullpolinom beállítása.

A polinomot a nullpolinomra állítja.

Definíció a(z) polynomial.hpp fájl 186. sorában.

◆ deg()

template<typename T>
int bme::Polynomial< T >::deg ( ) const
inline

Polinom foka.

Visszaadja a polinom fokát. A 0 polinom foka -1. Az invalid polinom foka -2.

Visszatérési érték
a polinom foka

Definíció a(z) polynomial.hpp fájl 120. sorában.

◆ getCoef()

template<typename T>
const T & bme::Polynomial< T >::getCoef ( int deg) const
inline

Polinom együtthatóinak lekérdezése.

Visszaadja a paraméterként megadott fokszámú tag együtthatóját. Ha a paraméter negtaív vagy nagyobb, mint a fokszám, akkor 0-val tér vissza.

Paraméterek
degazon tag fokszáma, amelynek az együtthatóját lekérdezzük
Visszatérési érték
a lekérdezett együttható

Definíció a(z) polynomial.hpp fájl 146. sorában.

◆ is_monic()

template<typename T>
bool bme::Polynomial< T >::is_monic ( ) const
inline

Azt vizsgálja, hogy normált-e a polinom. Nullpolinom vagy invalid polinom esetén a visszatérési érték hamis.

Visszatérési érték
visszaadja, hogy a főegyüttható 1-e

Definíció a(z) polynomial.hpp fájl 547. sorában.

◆ isInvalid()

template<typename T>
bool bme::Polynomial< T >::isInvalid ( ) const
inline

Invalid polinom vizsgálata.

Visszatérési érték
visszaadja, hogy a polinom invalid-e

Definíció a(z) polynomial.hpp fájl 128. sorában.

◆ isZero()

template<typename T>
bool bme::Polynomial< T >::isZero ( ) const
inline

Nullpolinom vizsgálata.

Visszatérési érték
visszaadja, hogy a polinom a nullpolinom-e

Definíció a(z) polynomial.hpp fájl 208. sorában.

◆ make_monic()

template<typename T>
void bme::Polynomial< T >::make_monic ( )
inline

Polinom normálása.

Leosztja a polinom együtthatóit a főegyütthatóval. Ha a polinom a nullpolinom vagy invalid, akkor nem történik semmi.

Definíció a(z) polynomial.hpp fájl 536. sorában.

◆ minimize()

template<typename T>
void bme::Polynomial< T >::minimize ( )
inline

Memória felszabadítása.

Felszabadítja a feleslegesen lefoglalt memóriát.

Definíció a(z) polynomial.hpp fájl 196. sorában.

◆ of() [1/2]

template<typename T>
Polynomial< T > bme::Polynomial< T >::of ( const Polynomial< T > & other) const
inline

Polinom behelyettesítése.

Behelyettesíti a paraméterként megadott polinomot a polinomba X helyére.

Paraméterek
othera behelyettesítendő polinom
Visszatérési érték
a helyettesítési érték

Definíció a(z) polynomial.hpp fájl 279. sorában.

◆ of() [2/2]

template<typename T>
T bme::Polynomial< T >::of ( const T & a) const
inline

Behelyettesítés.

Behelyettesíti a paraméterként megadott értéket a polinomba.

Paraméterek
aa behelyettesítendő érték
Visszatérési érték
a helyettesítési érték

Definíció a(z) polynomial.hpp fájl 251. sorában.

◆ operator!=()

template<typename T>
bool bme::Polynomial< T >::operator!= ( const Polynomial< T > & other) const
inline

Definíció a(z) polynomial.hpp fájl 321. sorában.

◆ operator%()

template<typename T>
Polynomial< T > bme::Polynomial< T >::operator% ( const Polynomial< T > & other) const
inline

Polinomok maradékos osztása.

Maradékosan osztja a polinomot a paraméterként megadott másik polinommal, és visszaadja a maradékot. Ha 0-val osztunk, vagy valamelyik polinom invalid, akkor a visszatérési érték az invalid polinom.

Paraméterek
othera polinom, amivel maradékosan osztunk
Visszatérési érték
az osztási maradék

Definíció a(z) polynomial.hpp fájl 517. sorában.

◆ operator%=()

template<typename T>
Polynomial< T > & bme::Polynomial< T >::operator%= ( const Polynomial< T > & other)
inline

Definíció a(z) polynomial.hpp fájl 526. sorában.

◆ operator()() [1/2]

template<typename T>
Polynomial< T > bme::Polynomial< T >::operator() ( const Polynomial< T > & other) const
inline

Polinom behelyettesítése.

Behelyettesíti a paraméterként megadott polinomot a polinomba X helyére.

Paraméterek
othera behelyettesítendő polinom
Visszatérési érték
a helyettesítési érték

Definíció a(z) polynomial.hpp fájl 298. sorában.

◆ operator()() [2/2]

template<typename T>
T bme::Polynomial< T >::operator() ( const T & a) const
inline

Behelyettesítés.

Behelyettesíti a paraméterként megadott értéket a polinomba.

Paraméterek
aa behelyettesítendő érték
Visszatérési érték
a helyettesítési érték

Definíció a(z) polynomial.hpp fájl 271. sorában.

◆ operator*()

template<typename T>
Polynomial< T > bme::Polynomial< T >::operator* ( const Polynomial< T > & other) const
inline

Polinomok szorzása.

Ha a két polinom szorzatának a foka meghaladja az INT_MAX értéket, az eredmény az invalid polinom.

Paraméterek
othera másik szorzótényező
Visszatérési érték
a két polinom szorzata

Definíció a(z) polynomial.hpp fájl 428. sorában.

◆ operator*=()

template<typename T>
Polynomial< T > & bme::Polynomial< T >::operator*= ( const Polynomial< T > & other)
inline

Definíció a(z) polynomial.hpp fájl 452. sorában.

◆ operator+()

template<typename T>
Polynomial< T > bme::Polynomial< T >::operator+ ( const Polynomial< T > & other) const
inline

Definíció a(z) polynomial.hpp fájl 372. sorában.

◆ operator+=()

template<typename T>
Polynomial< T > & bme::Polynomial< T >::operator+= ( const Polynomial< T > & other)
inline

Definíció a(z) polynomial.hpp fájl 386. sorában.

◆ operator-() [1/2]

template<typename T>
Polynomial< T > bme::Polynomial< T >::operator- ( ) const
inline

Definíció a(z) polynomial.hpp fájl 391. sorában.

◆ operator-() [2/2]

template<typename T>
Polynomial< T > bme::Polynomial< T >::operator- ( const Polynomial< T > & other) const
inline

Definíció a(z) polynomial.hpp fájl 402. sorában.

◆ operator-=()

template<typename T>
Polynomial< T > & bme::Polynomial< T >::operator-= ( const Polynomial< T > & other)
inline

Definíció a(z) polynomial.hpp fájl 416. sorában.

◆ operator/()

template<typename T>
Polynomial< T > bme::Polynomial< T >::operator/ ( const Polynomial< T > & other) const
inline

Polinomok osztása.

Maradékosan osztja a polinomot a paraméterként megadott másik polinommal, és visszaadja a hányadost. Ha 0-val osztunk, vagy valamelyik polinom invalid, akkor a visszatérési érték az invalid polinom.

Paraméterek
othera polinom, amivel osztunk
Visszatérési érték
a polinomok hányadosa

Definíció a(z) polynomial.hpp fájl 494. sorában.

◆ operator/=()

template<typename T>
Polynomial< T > & bme::Polynomial< T >::operator/= ( const Polynomial< T > & other)
inline

Definíció a(z) polynomial.hpp fájl 503. sorában.

◆ operator<()

template<typename T>
bool bme::Polynomial< T >::operator< ( const Polynomial< T > & other) const
inline

Polinomok összehasonlítása.

Összehasonlít két polinomot: egy polinom pontosan akkor kisebb egy másiknál, ha a fokszáma kisebb, vagy pedig egyenlő fokszám esetén a legkisebb fokú olyan tagnál, ahol az együtthatók eltérnek, az adott példány együtthatója kisebb a másik polinom együtthatójánál. Szükséges, hogy a T osztályban legyen a < operátornak overload-ja.

Paraméterek
othera polinom, amivel az adott példányt összehasonlítjuk
Visszatérési érték
visszaadja, hogy kisebb-e a polinom, mint a paraméterként megadott másik

Definíció a(z) polynomial.hpp fájl 335. sorában.

◆ operator<=()

template<typename T>
bool bme::Polynomial< T >::operator<= ( const Polynomial< T > & other) const
inline

Definíció a(z) polynomial.hpp fájl 358. sorában.

◆ operator==()

template<typename T>
bool bme::Polynomial< T >::operator== ( const Polynomial< T > & other) const
inline

Polinomok egyenlősége.

Megvizsgálja, hogy két polinomot egyenlő-e: a polinomok pontosan akkor egyenlők, ha a fokszámuk megegyezik, és minden tag együtthatója megegyezik a másik polinom megfelelő tagjának együtthatójával.

Paraméterek
othera polinom, amivel az adott példányt összehasonlítjuk
Visszatérési érték
visszaadja, hogy a két polinom megegyezik-e

Definíció a(z) polynomial.hpp fájl 313. sorában.

◆ operator>()

template<typename T>
bool bme::Polynomial< T >::operator> ( const Polynomial< T > & other) const
inline

Definíció a(z) polynomial.hpp fájl 362. sorában.

◆ operator>=()

template<typename T>
bool bme::Polynomial< T >::operator>= ( const Polynomial< T > & other) const
inline

Definíció a(z) polynomial.hpp fájl 366. sorában.

◆ operator[]()

template<typename T>
const T & bme::Polynomial< T >::operator[] ( int deg) const
inline

Polinom együtthatóinak lekérdezése.

Visszaadja a paraméterként megadott fokszámú tag együtthatóját. Ha a paraméter negatív vagy nagyobb, mint a fokszám, akkor 0-val tér vissza.

Paraméterek
degazon tag fokszáma, amelynek az együtthatóját lekérdezzük
Visszatérési érték
a lekérdezett együttható

Definíció a(z) polynomial.hpp fájl 158. sorában.

◆ pow()

template<typename T>
Polynomial< T > bme::Polynomial< T >::pow ( int k) const
inline

Polinomok hatványozása.

Ha a polinom haványának a foka meghaladja az INT_MAX értéket, az eredmény az invalid polinom.

Paraméterek
ka hatványkitevő
Visszatérési érték
a polinom k-adik hatványa

Definíció a(z) polynomial.hpp fájl 464. sorában.

◆ set()

template<typename T>
void bme::Polynomial< T >::set ( int deg,
const T & val )
inline

Polinom együtthatóinak beállítása.

Beállítja a megadott fokszámú tag együtthatóját a megadott értékre. Ha a paraméterként megadott fokszám negtaív, akkor nem történik semmi.

Paraméterek
degazon tag fokszáma, amelynek az együtthatóját beállítjuk
valaz érték, amire az együtthatót beállítjuk

Definíció a(z) polynomial.hpp fájl 169. sorában.

◆ setInvalidPoly()

template<typename T>
void bme::Polynomial< T >::setInvalidPoly ( )
inline

Invalid polinom beállítása.

Definíció a(z) polynomial.hpp fájl 133. sorában.

◆ shift()

template<typename T>
void bme::Polynomial< T >::shift ( int n = 1)
inline

Shift (X^n)-nel.

Ha n pozitív, felszorozza a polinomot X^n-nel. Ha n negatív, akkor az |n|-nél kisebb fokú tagokat kinullázza, majd beszoroz (X^n)-nel. Ha a polinom invalid, nem történik semmi. Ha a shift hatására INT_MAX fölé nőne a fokszám, az eredmény az invalid polinom.

Paraméterek
degazon tag fokszáma, amelynek az együtthatóját lekérdezzük

Definíció a(z) polynomial.hpp fájl 220. sorában.


Ez a dokumentáció az osztályról a következő fájl alapján készült: