Python의 천장 분할
Vaibhav Vaibhav
2023년10월10일
상한 나누기는 현재 답이나 몫보다 크거나 같은 가장 가까운 정수를 반환합니다. 파이썬에는 바닥 나누기에 대한 연산자 //
가 있지만 천장 나누기에는 그러한 연산자가 없습니다. 이 기사에서는 Python에서 천장 분할을 수행할 수 있는 다양한 방법에 대해 설명합니다.
파이썬에서 //
연산자를 사용한 천장 나누기
수학 및 바닥 나누기 //
를 사용하여 Python에서 천장 나누기를 수행할 수 있습니다. 다음 코드를 참조하십시오.
def ceil(a, b):
return -1 * (-a // b)
print(ceil(1, 2))
print(ceil(5, 4))
print(ceil(7, 2))
print(ceil(5, 3))
print(ceil(121, 10))
출력:
1
2
4
2
13
우리가 한 일은 다음과 같습니다 -
-a // b
는a // b
의 응답과 비교하여 반대 부호를 사용하지만 동일한 응답을 반환합니다.- 음수 측면에서
-a
는-(a + 1)
보다 크므로a
는 양수이므로//
연산자는 실제 답보다 약간 작은 정수를 반환합니다. 예를 들어, 일반 나눗셈의 답이-1.25
인 경우 반환되는 하한 값은-2
(-1.25
에 가장 가까운 가장 작은 정수)입니다. (-a // b)
의 중간 답 또는 결과에-1
을 곱하면 예상 부호가 있는 답을 얻을 수 있습니다. 반환된 값은 본질적으로 한도 나누기의 결과입니다.
파이썬에서 math.ceil()
함수를 사용한 천장 나누기
파이썬에는 수학적 연산을 수행하기 위한 함수와 유틸리티로 가득 찬 math
패키지가 있습니다. 그러한 기능 중 하나는 ceil()
기능입니다. 이 함수는 전달된 숫자의 상한값을 반환합니다. 예를 들어, 이 함수에 2.3
을 전달하면 3
이 반환됩니다. 우리는 일반 나눗셈의 결과를 이 함수에 전달하고 ceil 값을 반환합니다. 몇 가지 더 많은 예제와 사용법은 다음 코드를 참조하십시오.
from math import ceil
print(ceil(1 / 2))
print(ceil(5 / 4))
print(ceil(7 / 2))
print(ceil(5 / 3))
print(ceil(121 / 10))
출력:
1
2
4
2
13
작가: Vaibhav Vaibhav