파이썬에서 분수 줄이기

Fariba Laiq 2023년6월21일
  1. 파이썬 분수
  2. 파이썬에서 분수 줄이기
파이썬에서 분수 줄이기

Python에는 유리수를 사용하는 산술 기능이 있습니다. 문자열, 숫자, 소수, 실수 및 정수에서 분수 인스턴스를 생성할 수 있습니다.

한 쌍의 정수, 다른 유리수, 텍스트 또는 분수는 모두 분수 인스턴스를 만드는 데 사용할 수 있습니다. fraction 인스턴스는 해시될 수 있으므로 변경할 수 없는 것으로 간주해야 합니다.

파이썬 분수

Python Fraction 모듈은 유리수로 산술을 제공합니다. 이 모듈의 도움으로 문자열 및 정수, 부동 소수점 및 소수와 같은 기타 숫자 변수를 분수로 변환할 수 있습니다.

분수 인스턴스의 아이디어가 존재합니다. 분자와 분모 역할을 하는 두 개의 숫자로 구성됩니다.

의심할 여지 없이 Fraction 모듈은 Python 표준 라이브러리에서 가장 적게 사용되는 부분 중 하나입니다. 널리 인식되지 않을 수 있지만 이진 부동 소수점 산술 문제를 해결하는 데 도움이 될 수 있으므로 유용한 도구입니다.

재무 데이터로 작업하려는 경우 또는 계산에 무한한 정밀도가 필요한 경우 중요합니다.

Python에서 분수 만들기

Python에서 분수를 생성하려면 fractions 라이브러리에서 Fraction 모듈을 가져와야 합니다.

분수는 십진수 값 0.51/2로 변경합니다. 마찬가지로 (21, 60)7/20으로 변경되고 마지막 분수 (0, 10)은 분자가 0이므로 0 출력을 제공합니다.

예제 코드:

from fractions import Fraction

print(Fraction(0.5))
print(Fraction(21, 60))
print(Fraction(0, 10))

출력:

1/2
7/20
0

파이썬에서 분수 줄이기

다음 예에서는 간단한 단계로 분수를 줄였습니다.

먼저 GCD(최대 공약수) 함수를 정의하고 두 정수 n과 m을 선언했습니다. 그런 다음 d(분모)를 최소 mn으로 설정합니다.

우리는 while 루프를 사용하여 최대 공약수를 찾습니다. 그런 다음 축소된 분수의 분자와 분모를 반환하는 또 다른 함수 reduce()를 정의했습니다.

num(분수 분자)은 0이 아닌 정수여야 합니다. 숫자가 0이면 감소된 분수는 0입니다. 그렇지 않으면 함수를 호출하여 최대 공약수를 찾습니다.

numden을 GCD로 나누어 결과를 계산합니다.

예제 코드:

def GCD(n, m):
    d = min(n, m)
    while n % d != 0 or m % d != 0:
        d = d - 1
    return d


def reduce(num, den):
    if num == 0:
        return (0, 1)
    G = GCD(num, den)
    return (num // G, den // G)


num = 3
den = 27
(n, d) = reduce(num, den)
print("The fraction", num, "/", den, "is reduced to", n, "/", d)

출력:

The fraction 3 / 27 is reduced to 1 / 9
작가: Fariba Laiq
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

관련 문장 - Python Math