Advertisement
Guest User

Untitled

a guest
Nov 23rd, 2014
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.31 KB | None | 0 0
  1.  
  2.  
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5. #include <iostream>
  6. #include <math.h> //deklaracja bibliotek
  7.  
  8. using namespace std; //przestrzeń nazw
  9.  
  10. class Zespolona { //zadeklarowanie klasy o nazwie Zespolona
  11. public: //prawa dostępu publiczne
  12. int a; //deklaracje w klasie
  13. int b;
  14. Zespolona(); //konstruktor
  15. Zespolona (int _a,int _b): a(_a),b(_b) {};
  16. void wyswietl() { //funkcja typu void
  17. cout << " = " << a << " + " << b << "i\n"; //polecenie wyświetlające i wypisujące na ekranie przypisane wartości
  18. }
  19.  
  20. void ustaw() { //funkcja typu void o nazwie ustaw
  21. int m_a; //zmienne całkowite typu int
  22. int m_b;
  23. cout << "\nPodaj a: "; //wyświetlenie polecenia na ekranie
  24. cin >> m_a; //komenda prosząca użytkownika o wpisanie liczby a
  25. cout << "\nPodaj b: "; //wyświetlenie polecenia na ekranie
  26. cin >> m_b; //komenda prosząca użytkownika o wpisanie liczby b
  27. a = m_a; //przypisanie wartości
  28. b = m_b;
  29. }
  30.  
  31. Zespolona odejmij(Zespolona z2) { //metoda o nazwie odejmij
  32. Zespolona z3; //obiekt o nazwie Zespolona z3
  33. z3.a = a-z2.a; //działania wykonujące odejmowanie dwóch par liczb
  34. z3.b = b-z2.b;
  35. return z3; //zwracanie wartości z3
  36. }
  37.  
  38. Zespolona mnoz(Zespolona z2) { //metoda o nazwie mnoz
  39. Zespolona z3; //obiekt
  40. z3.a = (a * z2.a)-(b * z2.b); //działania wykonujące mnożenie dwóch par liczb
  41. z3.b = (b * z2.a)+(a * z2.b);
  42. return z3; //zwracanie wartości z3
  43. }
  44.  
  45. float modul() { //metoda zwracająca wartość typu float
  46. return sqrt(a*a + b*b); //zwracanie wartości modułów
  47. }
  48.  
  49. Zespolona operator+ (const Zespolona &druga) { //operator przeciążenia +
  50. Zespolona wynik; //wykonywanie działań
  51. wynik.a=a + druga.a;
  52. wynik.b= b + druga.b;
  53. return wynik; //zwracanie wartości wynik
  54. }
  55.  
  56. Zespolona operator- (const Zespolona &druga) { //operator przeciążenia -
  57. Zespolona wynik;
  58. wynik.a=a - druga.a;
  59. wynik.b= b - druga.b;
  60. return wynik; //zwracanie wartości wynik
  61. }
  62.  
  63. Zespolona operator/ (const Zespolona &druga) { //operator przeciążenia /
  64. Zespolona wynik;
  65. float c = a;
  66. wynik.a=(a*druga.a + b * druga.b)/ (druga.a*druga.a + druga.b*druga.b) ;
  67. wynik.b = ((-c * druga.b) + b * druga.a)/ (druga.a * druga.a + druga.b * druga.b) ;
  68. return wynik; //zwracanie wartości wynik
  69. }
  70.  
  71. Zespolona operator* (const Zespolona &druga) { //operator przeciążenia *
  72. Zespolona wynik;
  73. wynik.a=a * druga.a;
  74. wynik.b= b * druga.b;
  75. return wynik; //zwracanie wartości wynik
  76. }
  77. friend ostream& operator << (ostream &wyjscie, Zespolona const& t_zespolona) {
  78. wyjscie << t_zespolona.a << " + " << t_zespolona.b << "i";
  79. return wyjscie;
  80. }
  81. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement