Python oferuje wbudowaną klasę Fraction z modułu fractions, która umożliwia wykonywanie działań na ułamkach zwykłych. Dzięki niej można pracować na licznikach i mianownikach, unikając błędów zaokrągleń.
from fractions import Fraction
# Przykład dodawania dwóch ułamków
ułamek1 = Fraction(1, 4) # Definiowanie pierwszego ułamka 1/4
ułamek2 = Fraction(1, 6) # Definiowanie drugiego ułamka 1/6
wynik = ułamek1 + ułamek2 # Dodawanie ułamków
print(f"Wynik dodawania: {wynik}")
Wyjaśnienie:
from math import gcd
def dodaj_ulamki(a1, b1, a2, b2):
wspolny_mianownik = b1 * b2
licznik1 = a1 * b2
licznik2 = a2 * b1
licznik_wynikowy = licznik1 + licznik2
najwiekszy_wsp_dzielnik = gcd(licznik_wynikowy, wspolny_mianownik)
return (licznik_wynikowy // najwiekszy_wsp_dzielnik, wspolny_mianownik // najwiekszy_wsp_dzielnik)
wynik = dodaj_ulamki(1, 4, 1, 6)
print(f"Wynik dodawania metodą szkolną: {wynik[0]}/{wynik[1]}")
Wyjaśnienie:
from fractions import Fraction
# Przykład mnożenia dwóch ułamków
ułamek1 = Fraction(2, 3)
ułamek2 = Fraction(3, 4)
wynik = ułamek1 * ułamek2
print(f"Wynik mnożenia: {wynik}")
Wyjaśnienie: