Różnice między wybraną wersją a wersją aktualną.
Both sides previous revision Previous revision Next revision | Previous revision | ||
liczby_zespolone_complex [2008/11/09 19:36] lromanow |
liczby_zespolone_complex [2008/11/10 18:31] (aktualna) lromanow |
||
---|---|---|---|
Linia 17: | Linia 17: | ||
</code> | </code> | ||
- | Liczbie zespolonej ''**complex**'' można przypisać wartość innej liczby zespolonej. Ponieważ konstruktor jednoargumentowy jest również wykorzystywany jako operator konwersji, można również przypisać liczbie zespolonej wartość rzeczywistą. | + | Liczbie zespolonej ''**complex**'' można przypisać wartość innej liczby zespolonej. Ponieważ konstruktor jednoargumentowy jest również wykorzystywany jako operator konwersji, można przypisać liczbie zespolonej wartość rzeczywistą. |
<code cpp> | <code cpp> | ||
Linia 64: | Linia 64: | ||
===== Porównywanie wartości ===== | ===== Porównywanie wartości ===== | ||
- | Dwie liczby zespolone ''**complex**'' mogą być przetestowane na równość lub nierówność wykorzystując operatory ''=='' i ''!=''. Dwie wartości są równe, gdy odpowiadające sobie części liczby są sobie równe. | + | Dwie liczby zespolone ''**complex**'' mogą być przetestowane na równość lub nierówność wykorzystując operatory ''=='' i ''!=''. Dwie wartości są równe, gdy odpowiadające sobie części rzeczywiste i urojone liczb są sobie równe. |
<code cpp> | <code cpp> | ||
Linia 71: | Linia 71: | ||
</code> | </code> | ||
- | Liczby zespolone nie mogą być porównywane za pomocą innych operatorów, niedostępne są operatory porządkujące. | + | Liczby zespolone nie mogą być porównywane za pomocą innych operatorów, tzn. niedostępne są operatory porządkujące. |
===== Strumienie I/O ===== | ===== Strumienie I/O ===== | ||
- | Liczby zespolone klasy ''**complex**'' mogą być pisane do strumienia bądź z niego czytane wykorzystując przyjętą konwencję dla strumieni I/O. Wartość pisana jest do strumienia w nawiasach jako ''(u,v)''. Wartość jest czytana ze strumienia jako dwie wartości numeryczne oddzielone przecinkiem i otoczone nawiasami. | + | Liczby zespolone klasy ''**complex**'' mogą być pisane do strumienia bądź z niego czytane wykorzystując przyjętą konwencję dla strumieni I/O. Wartość pisana jest do strumienia w nawiasach jako ''(u,v)''. Wartość jest czytana ze strumienia jako dwie wartości numeryczne oddzielone przecinkiem i otoczone nawiasami. Przykłady można znaleźć w kodzie na końcu strony. |
===== Wartość normalna i moduł ===== | ===== Wartość normalna i moduł ===== | ||
Linia 95: | Linia 95: | ||
===== Funkcje trygonometryczne ===== | ===== Funkcje trygonometryczne ===== | ||
- | Funkcje tryugonometryczne zdefiniowane dla typów zmiennoprzecinkowych zostały rozszerzone dla liczb zespolonych. Dotyczy to funkcji ''sin()'', ''cos()'', ''tan()'', ''sinh()'', ''cosh()'' i ''tanh()''. Każda z nich bierze jako argument liczbę zespoloną **complex** i zwraca również liczbę zespoloną. | + | Funkcje trygonometryczne zdefiniowane dla typów zmiennoprzecinkowych zostały rozszerzone dla liczb zespolonych. Dotyczy to funkcji ''sin()'', ''cos()'', ''tan()'', ''sinh()'', ''cosh()'' i ''tanh()''. Każda z nich bierze jako argument liczbę zespoloną **complex** i zwraca liczbę zespoloną. |
- | ===== Inne funkcje ===== | + | ===== Pozostałe funkcje ===== |
Podobnie jak funkcje trygonometryczne funkcje ''exp()'', ''log()'', ''log10()'' i ''sqrt()'' zostały rozszerzone dla liczb zespolonych. Jako argument biorą obiekt ''**complex**'' i zwracają również obiekt ''**complex**''. | Podobnie jak funkcje trygonometryczne funkcje ''exp()'', ''log()'', ''log10()'' i ''sqrt()'' zostały rozszerzone dla liczb zespolonych. Jako argument biorą obiekt ''**complex**'' i zwracają również obiekt ''**complex**''. | ||
Linia 105: | Linia 105: | ||
===== Przykładowy program ===== | ===== Przykładowy program ===== | ||
- | W poniższym kodzie zebrano przykłady dostępne na tej stronie opisujące podstawowe funkcje klasu ''**complex**''. Ponadto dodano prostą funkcję obrazującą przykładowe zastosowanie klasy w celu obliczenia pierwiastków funkcji kwadratowej o współczynnikach zespolonych. | + | W poniższym kodzie zebrano przykłady dostępne na tej stronie opisujące podstawowe funkcje klasu ''**complex**''. Ponadto dodano prostą funkcję obrazującą przykładowe zastosowanie klasy w celu obliczenia pierwiastków funkcji kwadratowej o współczynnikach zespolonych. Poniższy kod dostępny jest {{complex:complex.cpp|tutaj}}. |
<code cpp> | <code cpp> | ||
Linia 111: | Linia 111: | ||
Autor: Łukasz Romanowski | Autor: Łukasz Romanowski | ||
- | Biblioteka standarodowa: <complex> | + | Biblioteka standardowa: <complex> |
- | Opis: Klasa szablonowa complex służy do reprezentacji i manipulacji liczbami zespolonymi. Operacje zdefiniowane na liczbach zespolonych pozwalają na swobodne mieszanie obiektów tej klasy z wbudowanymi typami numerycznymi. Należy zauważyć, że większość operacji wykonywanych na obiektach tej klasy to zwykłe funkcje. Wyjątkami są metody real() i imag() należące do klasy complex. | + | Opis: Klasa szablonowa complex służy do reprezentacji i manipulacji liczbami zespolonymi. |
+ | Operacje zdefiniowane na liczbach zespolonych pozwalają na swobodne mieszanie obiektów tej | ||
+ | klasy z wbudowanymi typami numerycznymi. Należy zauważyć, że większość operacji wykonywanych | ||
+ | na obiektach tej klasy to zwykłe funkcje. Wyjątkami są metody real() i imag() należące do klasy complex. | ||
*/ | */ | ||
Linia 170: | Linia 173: | ||
cout << -cplx_one << endl; // wartość (-2.585,-3.14) | cout << -cplx_one << endl; // wartość (-2.585,-3.14) | ||
- | // do porównania wartości dwóch liczb zespolonych używamy operatorów == i !=, pozostałe operatory porównujące są niedostępne | + | // do porównania wartości dwóch liczb zespolonych używamy operatorów == i !=, |
+ | // pozostałe operatory porównujące są niedostępne | ||
cout << (cplx_one == cplx_three) << endl; // wartość 0 (fałsz) | cout << (cplx_one == cplx_three) << endl; // wartość 0 (fałsz) | ||
cout << (cplx_one != cplx_three) << endl; // wartość 1 (prawda) | cout << (cplx_one != cplx_three) << endl; // wartość 1 (prawda) | ||
Linia 211: | Linia 215: | ||
); | ); | ||
} | } | ||
- | |||
</code> | </code> | ||