Advertisement
Guest User

Untitled

a guest
Sep 18th, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.52 KB | None | 0 0
  1. from math import *
  2. class Ulamek:
  3. pass
  4.  
  5. def wyswietl(u1,u2):
  6. print(u1.licznik,"/",u1.mianownik," ; ",u2.licznik,"/",u2.mianownik)
  7.  
  8. def wyswietlUlamek(u):
  9. if u.mianownik < 0:
  10. u.licznik=-u.licznik
  11. u.mianownik=-u.mianownik
  12. if abs(u.licznik) >= abs(u.mianownik):
  13. calosc = u.licznik // u.mianownik
  14. ulamekWlasciwy = u.licznik % u.mianownik
  15. if ulamekWlasciwy != 0:
  16. print(calosc, "i", ulamekWlasciwy, "/", u.mianownik)
  17. elif ulamekWlasciwy == 0:
  18. print(calosc)
  19. elif u.licznik != 0:
  20. print(u.licznik, "/", u.mianownik)
  21. else:
  22. print("0")
  23.  
  24.  
  25. def NWD(a,b):
  26. if b==0:
  27. return a
  28. return NWD(b,a%b)
  29.  
  30. def skracaj(u):
  31. nwd = NWD(u.licznik,u.mianownik)
  32. u.licznik=u.licznik//nwd
  33. u.mianownik=u.mianownik//nwd
  34.  
  35. def dodajUlamki(u1,u2):
  36. u = Ulamek()
  37. if u1.mianownik==u2.mianownik:
  38. u.licznik=u1.licznik+u2.licznik
  39. else:
  40. u.licznik = u1.licznik*u2.mianownik+u2.licznik*u1.mianownik
  41. u.mianownik = u1.mianownik*u2.mianownik
  42. skracaj(u)
  43. return(u)
  44.  
  45. def odejmijUlamki(u1,u2):
  46. u = Ulamek()
  47. if u1.mianownik==u2.mianownik:
  48. u.licznik=u1.licznik-u2.licznik
  49. else:
  50. u.licznik = u1.licznik*u2.mianownik-u2.licznik*u1.mianownik
  51. u.mianownik = u1.mianownik*u2.mianownik
  52. skracaj(u)
  53. return(u)
  54.  
  55. def mnozUlamki(u1,u2):
  56. u = Ulamek()
  57. u.licznik = u1.licznik * u2.licznik
  58. u.mianownik = u1.mianownik * u2.mianownik
  59. skracaj(u)
  60. return(u)
  61.  
  62. def dzielUlamki(u1,u2):
  63. u= Ulamek()
  64. u.licznik = u1.licznik * u2.mianownik
  65. u.mianownik = u1.mianownik * u2.licznik
  66. skracaj(u)
  67. return(u)
  68.  
  69.  
  70. def NWD2(a,b):
  71. while a!=b:
  72. if a<b:
  73. b=b-a
  74. elif a>b:
  75. a=a-b
  76. return(a)
  77.  
  78. u1=Ulamek()
  79. u2=Ulamek()
  80. u1.licznik=int(input("Podaj licznik pierwszego ułamka: "))
  81. u1.mianownik=int(input("Podaj mianownik pierwszego ułamka: "))
  82. u2.licznik=int(input("Podaj licznik drugiego: "))
  83. u2.mianownik=int(input("Podaj mianownik drugiego ułamka: "))
  84. wyswietl(u1,u2)
  85. #print(u1.licznik,"/",u1.mianownik," ? ",u2.licznik,"/",u2.mianownik,"=")
  86. skracaj(u1); skracaj(u2)
  87. #print(u1.licznik,"/",u1.mianownik," ? ",u2.licznik,"/",u2.mianownik,"=")
  88. wyswietl(u1,u2)
  89. print("Dodawanie")
  90. wyswietlUlamek(dodajUlamki(u1,u2))
  91. print("Odejmowanie")
  92. wyswietlUlamek(odejmijUlamki(u1,u2))
  93. print("Mnożenie")
  94. wyswietlUlamek(mnozUlamki(u1,u2))
  95. print("Dzielenie")
  96. wyswietlUlamek(dzielUlamki(u1,u2))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement