본문 바로가기
파이썬/파이썬기본문법

파이썬 numpy ufunc 최대공약수(GCD - Greatest Common Denominator)

by flycoding 2024. 1. 12.
반응형

파이썬 numpy ufunc 최대공약수 찾기 - gcd()

GCD(Greatest Common Deminator)는 HCF(Highest Common Factor)라고도 하며, 두 숫자 모두의 공통 인자인 가장 큰 숫자이다.

 

두수의 최대굥약수 찾기:

import numpy as np

num1 = 6
num2 = 9
print('num1 : ', num1)
print('num2 : ', num2)

x = np.gcd(num1, num2)

print('x = np.gcd(num1, num2) : ', x)

 두 숫자를 (6/3=2 및 9/3=3)으로 나눌 수 있는 가장 높은 숫자이기 3이다.

위의 코드를 실행하면 아래 그림과 같다.

파이썬 numpy ufunc 최대공약수 gcd() 함수 활용 예제

 

파이썬 numpy ufunc 배열 내에서 최대공약수 찾기

배열의 모든 값 중 가장 높은 공통 인자를 찾으려면 reduce() 방법을 사용할 수 있다.

reduce() 메서드는 각 요소에서 ufunc, 이 경우 gcd() 함수를 사용하고 배열을 1차원씩 줄이다.

다음 배열에 있는 모든 숫자에 대한 GCD를 찾는다:

import numpy as np

arr = np.array([20, 8, 32, 36, 16])
print('arr : ', arr)

x = np.gcd.reduce(arr)

print('x = np.gcd.reduce(arr) : ', x)

 모든 값을 나눌 수 있는 가장 높은 숫자가 4이다.

위의 코드를 실행하면 아래 그림과 같다.

파이썬 numpy ufunc 최대공약수 reduce() 함수 활용 예제

 

이번 글에서는 파이썬 numpy ufunc 최대공약수(GCD - Greatest Common Denominator)를 구하는 것에 대해서 살펴보았다.

파이썬 numpy ufunc에 gcd()함수, reduce()함수를 통해 최대공약수를 구하는 실습을 하였다.

꼭 손으로 눈으로 머리로 익히며 실습하기를 바란다.

모두 화이팅입니다.!!!

 

출처 : 이 글의 출처는 w3schools사이트를 참고하였으며 필자가 추가하여 정리한 글입니다.

반응형

댓글