본문으로 건너뛰기
🛠️ToolsShed

분수 ↔ 소수 변환기

분수를 소수로, 소수를 분수로 변환합니다. 기약분수, 대분수, 백분율을 표시합니다.

자주 쓰는 분수

이 도구 소개

분수와 소수 사이의 변환은 수학의 기초 능력으로, 학생부터 전문가까지 정확한 계산이 필요한 모든 사람에게 중요합니다. 수식을 정리하거나 수치를 비교하거나 분수와 소수의 관계를 이해할 때 두 형태를 능숙하게 다루는 것이 수학적 자신감을 키웁니다. 이 도구는 즉시 분수와 소수를 변환하면서 기약분수, 대분수, 백분율까지 보여줍니다.

3/4나 0.75 같은 값을 입력하면 도구가 여러 형식으로 변환 결과를 표시합니다. 분수를 입력하면 소수값과 백분율을, 소수를 입력하면 가장 간단한 분수 형태로 변환해줍니다. 요리, 건설, 교육, 또는 분수로 측정하는 모든 상황에서 유용합니다. 진분수와 가분수를 모두 문제없이 처리합니다.

자주 묻는 질문

코드 구현

# Fraction and Decimal Conversion

from math import gcd
from fractions import Fraction

def fraction_to_decimal(numerator: int, denominator: int) -> float:
    if denominator == 0:
        raise ValueError("Denominator cannot be zero")
    return numerator / denominator

def decimal_to_fraction(decimal: float, max_denominator: int = 10000) -> tuple[int, int]:
    f = Fraction(decimal).limit_denominator(max_denominator)
    return f.numerator, f.denominator

def simplify_fraction(numerator: int, denominator: int) -> tuple[int, int]:
    common = gcd(abs(numerator), abs(denominator))
    return numerator // common, denominator // common

def to_mixed_number(numerator: int, denominator: int) -> str:
    if abs(numerator) < denominator:
        return f"{numerator}/{denominator}"
    whole = numerator // denominator
    remainder = abs(numerator % denominator)
    if remainder == 0:
        return str(whole)
    return f"{whole} {remainder}/{denominator}"

# Examples
print(fraction_to_decimal(3, 4))       # 0.75
print(decimal_to_fraction(0.75))       # (3, 4)
print(simplify_fraction(6, 8))         # (3, 4)
print(to_mixed_number(7, 4))           # "1 3/4"
print(f"{fraction_to_decimal(1, 3):.6f}")  # 0.333333

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.