본문 바로가기
파이썬/코드업

파이썬 코드업 1552번 함수로 소수 부분만 리턴하기

by artra 2021. 10. 27.
반응형

파이썬 코드업 1552번 함수로 소수 부분만 리턴하기

# 코드업 1552 문제
# 함수로 소수 부분만 리턴하기
 
def f(): # 오답
    a = float(input()) # 3.14 입력받음
 
    b = int(a) # b에 정수로 변환된 3을 입력
 
    c = a - b # 0.1400000000... 나와야하는데
 
    print(c) # 0.14000000000000012 으로 출력된다??
    # 컴퓨터의 부동소수점 오류 때문이라고 한다.
 
f()
 
#####
 
def f(): # 정답
    a = float(input()) # 3.14 입력받음
 
    b = int(a) # b에 정수로 변환된 3을 입력
 
    c = a - b
 
    print("%.14f" % c) # 코드업 입출력 예시를 보면 소수점이 14자리이다
    # 그래서 "%.14f" % <-- 와 같이 소수점 14자리 까지만 표시하게 되면
    # 0.14000000000000012 문제가 발생하지 않고 0.14000000000000 으로 정답처리
 
f()
cs
반응형

댓글