divmod()는 두 개의 숫자를 매개변수로 사용하고 나눗셈의 몫과 나머지를 튜플로 제공하는 파이썬 표준 라이브러리의 일부입니다. 숫자의 나눗셈을 확인하고 숫자가 소수인지 확인하는 것과 같은 많은 수학 응용 프로그램에서 유용합니다.
구문
구문:divmod(a, b)a 및 b :b는 aa를 나누고 b는 정수 또는 부동 소수점
예시
아래 예에서 정수와 부동 소수점 모두의 경우를 보십시오. divmod()를 적용하면 정수와 부동 소수점 값도 포함할 수 있는 결과 튜플을 제공합니다.
# with integersprint("5 및 2는 제공:",divmod(5,2))print("25 및 5는 제공:",divmod(25,5))# with Floatsprint("5.6 및 2는 제공:" ,divmod(5.6,2))print("11.3 및 9.2 제공:",divmod(11.3,9.2))
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
5 및 2 제공:(2, 1)25 및 5 제공:(5, 0)5.6 및 2 제공:(2.0, 1.5999999999999996)11.3 및 9.2 제공:(1.0, 2.10000000000000014)제로 사용
첫 번째 인수가 0이면 (0,0)을 얻습니다. 그리고 두 번째 인수가 0이면 예상대로 Zerodivision 오류가 발생합니다.
예
# 첫 번째 인수를 zeroprint("0 및 8 제공:",divmod(0,8))# 두 번째 인수를 zeroprint("8 및 0 제공:",divmod(8,0))출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
0 및 8 제공:(0, 0)Traceback(가장 최근 호출 마지막):파일 "xxx.py", 줄 6, inprint("8 및 0 제공:",divmod(8,0))ZeroDivisionError:정수 나누기 또는 0으로 모듈로나눗셈 확인
나눗셈 후 튜플의 두 번째 값이 0이면 첫 번째 숫자를 초로 나눌 수 있다고 말합니다. 그렇지 않으면 나눌 수 없습니다. 아래의 예가 이를 보여줍니다.
예
m =12n =4quotient,remainder =divmod(m,n)print(quotient)print(remainder)if (remainder==0):print(m,'는 ',n)else로 나눌 수 있음:print(m ,'는 ',n)으로 나눌 수 없습니다.출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
3012는 4의 배수입니다.숫자가 소수인지 확인하기
우리는 divmod()를 사용하여 숫자를 1까지 시작하는 각 숫자로 나누기 시작할 때 생성하는 알림을 추적할 수 있습니다. 소수의 경우 나머지 0의 개수는 자신 이외의 숫자가 나누지 않으므로 1뿐입니다. 완벽하게. 나머지 0의 개수가 1보다 크면 숫자는 소수가 아닙니다.
예
num =11a =num# 값이 0인 나머지 개수를 계산합니다.count =0while a !=0:q, r =divmod(num, a) a -=r ==0인 경우:count +=1if count> 2:print(num, '프라임이 아님')else:print(num, '프라임')출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
11은 프라임입니다