Advertisement
Guest User

Untitled

a guest
Mar 21st, 2018
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.93 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. #include <fstream>
  4. #include <math.h>
  5.  
  6. using namespace std;
  7.  
  8.  
  9. class ZlyUlamek {
  10. public:
  11. ZlyUlamek() {}
  12. friend std::ostream& operator << (std::ostream& out, ZlyUlamek &zu);
  13. };
  14. class DzieleniePrzezZero {
  15. public:
  16. DzieleniePrzezZero() {}
  17. friend std::ostream& operator << (std::ostream& out, DzieleniePrzezZero &dpz);
  18. };
  19. std::ostream& operator << (std::ostream& out, ZlyUlamek &zu) {
  20. out << "WYJATEK: zly ulamek - w mianowniku nie moze byc zera" << std::endl;
  21. return out;
  22. }
  23. std::ostream& operator << (std::ostream& out, DzieleniePrzezZero &dpz) {
  24. out << "WYJATEK: proba dzielenia przez 0" << std::endl;
  25. return out;
  26. }
  27.  
  28.  
  29. class Ulamek {
  30. private:
  31. int licznik;
  32. int mianownik;
  33. public:
  34.  
  35. Ulamek(int licznik, int mianownik) {
  36. this->licznik = licznik;
  37. if (mianownik == 0) throw ZlyUlamek();
  38. this->mianownik = mianownik;
  39. };
  40.  
  41. Ulamek() {};
  42.  
  43. int getLicznik() {
  44. return licznik;
  45. }
  46. void setLicznik(int licznik) {
  47. this->licznik = licznik;
  48. }
  49.  
  50. int getMianownik() {
  51. return mianownik;
  52. }
  53. void setMianownik(int mianownik) {
  54. this->mianownik = mianownik;
  55. }
  56.  
  57. friend ostream& operator << (ostream& out, Ulamek &liczba) {
  58. out << liczba.getLicznik() << '/' << liczba.getMianownik();
  59. return out;
  60. };
  61.  
  62. Ulamek operator / (Ulamek a) {
  63. if (a.licznik == 0) throw DzieleniePrzezZero();
  64. Ulamek wynik(licznik*a.mianownik, mianownik*a.licznik);
  65. return wynik;
  66. }
  67.  
  68.  
  69.  
  70. };
  71.  
  72. class Pierwiastki {
  73. private:
  74. double x;
  75. double y;
  76. public:
  77.  
  78. Pierwiastki(double x, double y) {
  79. this->x = x;
  80. this->y = y;
  81. if (x < 0 || y < 0 || x + y < 0) throw ZlyPierwiastek();
  82. };
  83. };
  84.  
  85.  
  86.  
  87.  
  88. int main() {
  89. try {
  90. Ulamek u1(3, 5);
  91. std::cout << u1;
  92. Ulamek u2(0, 6);
  93. std::cout << u2;
  94. Ulamek dzielenie = u1 / u2;
  95. std::cout << dzielenie;
  96. }
  97. catch (ZlyUlamek zu) {
  98. std::cout << zu;
  99. }
  100. catch (DzieleniePrzezZero dpz) {
  101. std::cout << dpz;
  102. }
  103. system("pause");
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement