소수점 버림을 하고 싶을 때,
- math 수학 모듈 중 trunc(), floor() 함수 사용
- 기능이 비슷하나, 양수건 음수건 소수점은 무조건 버리고 싶으면 trunc() 사용
#소수점 버리기 방법 1 : trunc()
#trunc(x) : 소수 부분을 제거하고 정수 부분만 남겨두고 x를 반환. 이는 0으로 반올림.
#trunc()는 양수 x에 대해 Floor()와 동일하고 음수 x에 대해 ceil()과 동일.
import math
#양수인 경우 몫만 놔두고 소수점 버림
print(math.trunc(2.5)) # 2
#음수인 경우 몫만 놔두고 소수점 버림
print(math.trunc(-2.5)) # 2
#소수점 버리기 방법 2 : floor()
#floor(x) : x보다 작거나 같은 가장 큰 정수인 x의 floor를 반환
import math
#양수인 경우 몫만 놔두고 소수점 버림
print(math.floor(2.5)) # 2
#음수인 경우 값보다 작거나 같은 것중의 가장 큰 수를 반환하여 -3 반환
print(math.floor(-2.5)) # -3
▶ 소수점 버림 백준 문제 풀이
#두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오.
#두 자연수 A와 B가 주어진다. (1 ≤ A, B ≤ 10,000)
#첫째 줄에 A+B, 둘째 줄에 A-B, 셋째 줄에 A*B, 넷째 줄에 A/B, 다섯째 줄에 A%B를 출력한다.
import math
inpList = input().split(" ")
while True:
#1 ≤ A, B ≤ 10,000 의 validation check
if (int(inpList[0]) >= 1 and int(inpList[1]) <= 10000):
plusSum = int(inpList[0]) + int(inpList[1])
print(plusSum)
minusSum = int(inpList[0]) - int(inpList[1])
print(minusSum)
multipSum = int(inpList[0]) * int(inpList[1])
print(multipSum)
#x와 y의 정수로 내림한 몫 연산 // 을 사용하지 않고 trunc() 소수점 버림으로 계산
divSum = int(inpList[0]) / int(inpList[1])
print(math.trunc(divSum))
restSum = int(inpList[0]) % int(inpList[1])
print(restSum)
break
else:
inpList = input().split(" ")
▷ 파이썬 자습서 참고
'코딩라이브러리 > 파이썬' 카테고리의 다른 글
파이썬 문자열 formatter string (with 백준 2739) (0) | 2024.05.20 |
---|---|
파이썬 문자열 거꾸로 해보기 (with 백준 1251 6438) (0) | 2024.05.19 |
파이썬 정수, 실수 형변환 데이터형 확인 (0) | 2024.05.18 |
파이썬 소수점 반올림 올림 round()와 ceil() (with 백준 2033) (0) | 2024.05.17 |
파이썬 문자인지 숫자인지 (with 백준 10926) (0) | 2024.05.11 |