programing

숫자의 나눗셈 나머지를 찾습니다.

randomtip 2022. 11. 1. 22:03
반응형

숫자의 나눗셈 나머지를 찾습니다.

Python에서 숫자의 나눗셈의 나머지를 찾으려면 어떻게 해야 할까요?

예를 들어 다음과 같습니다.
숫자가 26이고 나누어진 수가 7이면 나눗셈의 나머지는 5가 됩니다.
(7+7+7=21 및 26-21=5 이후).

모듈로 연산자를 찾고 있습니다.

a % b

예를 들어 다음과 같습니다.

>>> 26 % 7
5

물론 고객이 직접 구현하기를 원했을 수도 있습니다.그것도 어렵지 않습니다.

나눗셈의 나머지 부분은 연산자를 사용하여 검색할 수 있습니다.%:

>>> 26%7
5

지수와 모듈로가 모두 필요한 경우 기본 제공이 있습니다.divmod기능:

>>> seconds= 137
>>> minutes, seconds= divmod(seconds, 60)

26 % 7(나머지)

26 / 7(제수, 부동값이 될 수 있음)

26 // 7(정수 값만 제수됩니다.)

한 줄의 코드에서 몫과 나머지를 얻으려면(좀 더 일반적인 사용 사례) 다음을 사용합니다.

quotient, remainder = divmod(dividend, divisor)
#or
divmod(26, 7)

Python 3.7부터 새로운 기능이 있습니다.math.remainder()기능:

from math import remainder
print(remainder(26,7))

출력:

-2.0  # not 5

주의해 주십시오.상기와는 다릅니다.%.

매뉴얼 견적:

math.disc(x, y)

y에 대한 IEEE 754 스타일의 나머지 x를 반환합니다.유한 x와 유한 비제로 y의 경우, 이것은 차이 x - n*y입니다.여기서 n은 몫 x/y의 정확한 값에 가장 가까운 정수입니다.x/y가 두 연속된 정수 사이의 정확한 중간인 경우 가장 가까운 짝수 정수가 n에 사용됩니다.따라서 나머지 r = 나머지(x, y)는 항상 abs(r) <= 0.5 * abs(y)를 만족한다.

IEEE 754에 이은 특수한 경우: 특히, remain(x, math.inf)은 유한 x에 대해 x이고 remain(x, 0)과 remain(math.inf, x)은 NaN 이외의 x에 대해 ValueError를 발생시킵니다.나머지 연산의 결과가 0일 경우, 그 0은 x와 같은 부호를 가집니다.

IEEE 754 바이너리 부동 소수점을 사용하는 플랫폼에서는, 이 조작의 결과는 항상 정확하게 표시됩니다.반올림 에러는 발생하지 않습니다.

Issue29962에서는 새로운 함수를 작성하기 위한 근거를 설명합니다.

modulo를 회피하는 경우는, 다음의 4개의 기본적인 조작의 편성을 사용할 수도 있습니다.

26 - (26 // 7 * 7) = 5

나눌 때는 / 대신 %를 사용합니다.이렇게 하면 나머지가 반환됩니다.그래서 당신의 경우

26 % 7 = 5

계수 연산자(%)를 사용하여 해결할 수 있습니다.

26 % 7 = 5;

그러나 26 / 7 = 3은 몫이 되지만 % 연산자는 나머지를 제공하기 때문입니다.

Modulo가 정답입니다만, 수동으로 하고 있다면 이 방법이 효과가 있을 것입니다.

num = input("Enter a number: ")
div = input("Enter a divisor: ")

while num >= div:
    num -= div
print num

modulo 연산자를 사용하여 나머지를 찾을 수 있습니다. 예

a=14
b=10
print(a%b)

4 로 인쇄됩니다.

나눗셈 문제의 나머지를 원한다면 수학처럼 실제 나머지 규칙을 사용하십시오.이 방법으로는 소수점 이하 출력은 얻을 수 없습니다.

valone = 8
valtwo = 3
x = valone / valtwo
r = valone - (valtwo * x)
print "Answer: %s with a remainder of %s" % (x, r)

계산기 는 그냥 '산출하다', '산출하다', '산출하다', '산출하다'로 바꾸면 .valone = 8valone = int(input("Value One")) 됩니다.valtwo = 3하하분분

다음은 Python의 나머지 정수 버전으로, C의 "%" 연산자와 같은 결과를 얻을 수 있습니다.

def remainder(n, d):
    return (-1 if n < 0 else 1) * (abs(n) % abs(d))

예상 결과:

remainder(123, 10)   ==  3
remainder(123, -10)  ==  3
remainder(-123, 10)  == -3
remainder(-123, -10) == -3

함수를 정의하고 나머지를 렘(number1,number2)과 같은2개의 값으로 호출할 수 있습니다.이 값은 number1%number2를 반환한 후 잠시 시간을 생성하여 true로 설정한 후 함수 홀딩 번호1과 2의 2개의 입력을 출력한 후 print(rem(number1,number2))를 반환합니다.

언급URL : https://stackoverflow.com/questions/5584586/find-the-division-remainder-of-a-number

반응형