Advertisement
Guest User

Untitled

a guest
Apr 1st, 2020
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.26 KB | None | 0 0
  1. #include <iostream>
  2. #include <math.h>//biblioteka wykorzystana do liczenia pierwiastka
  3. using namespace std;
  4.  
  5. class Ulamek{
  6. private:
  7.  
  8. int licznik;
  9. int mianownik;
  10. //prywatne pola klasy
  11. public:
  12.  
  13. Ulamek(int licznik, int mianownik){//konstruktor parametryzujący
  14. Ulamek::licznik = licznik;
  15. Ulamek::mianownik = mianownik;
  16. }
  17.  
  18. Ulamek(){//konstruktor domyślny
  19. Ulamek::licznik = 0;
  20. Ulamek::mianownik = 1;
  21. }
  22.  
  23. Ulamek(int licznik){//konstruktor konwertujący
  24. Ulamek::licznik = licznik;
  25. Ulamek::mianownik = 1;
  26. }
  27.  
  28. operator double(){//operator konwertujący (gdy wywołujemy funkcję z argumentem double zwraca typ double)
  29. return (double)licznik/(double)mianownik;
  30. }
  31.  
  32. //settery i gettery
  33. void setLicznik(int licznik) {
  34. Ulamek::licznik = licznik;
  35. }
  36.  
  37. void setMianownik(int mianownik) {
  38. Ulamek::mianownik = mianownik;
  39. }
  40.  
  41. int getMianownik() const {
  42. return mianownik;
  43. }
  44.  
  45. int getLicznik() const {
  46. return licznik;
  47. }
  48.  
  49. void wypisz(){//metoda wypisująca wartości
  50. cout<<licznik<<"/"<<mianownik<<endl;
  51. }
  52.  
  53. bool czyRowne(Ulamek &ulamek){//funkcja porównująca ułamki
  54. if(Ulamek::licznik*ulamek.mianownik==ulamek.licznik*Ulamek::mianownik) {
  55. return true;
  56. }else{
  57. return false;
  58. }
  59. }
  60. };
  61.  
  62. Ulamek dzielenie(const Ulamek& u1, const Ulamek& u2){//funkcja globalna dzielenie
  63. Ulamek wynik(u1.getLicznik()*u2.getMianownik(),u1.getMianownik()*u2.getLicznik());
  64. return wynik;
  65. }
  66.  
  67. double pierwiastek(double liczba){//funkcja zwracająca pierwiastek z użyciem biblioteki math.h
  68. return sqrt(liczba);
  69.  
  70. }
  71.  
  72.  
  73.  
  74. int main(int argc, const char * argv[]) {
  75. Ulamek ulamek1(2,3);
  76. Ulamek ulamek2(3,4);
  77. dzielenie(ulamek1,ulamek2).wypisz();
  78. dzielenie(ulamek1, 5).wypisz();
  79. ulamek1.wypisz();
  80. cout<<"Pierwiastek "<<pierwiastek(ulamek1)<<endl;
  81. Ulamek ulamek_a(5,10);
  82. Ulamek ulamek_b(15,30);
  83. cout<<"Ulamki sa ";
  84. if(ulamek_a.czyRowne(ulamek_b)){//sprawdzanie rownosci ulamkow
  85. cout<<"rowne"<<endl;
  86. } else{
  87. cout<<"rozne"<<endl;
  88. }
  89.  
  90. return 0;
  91. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement