SHARE
TWEET

Untitled

a guest Sep 18th, 2019 71 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  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))
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top