최대공약수(GCD) for Python

2019. 7. 9. 14:42개발노트

배열을 사용합니다.

간단하게 숫자 두 개를 입력해서 최대공약수를 찾습니다.

 

#STEP 1

배열에 숫자를 추가하고 max, min함수를 사용해서 배열에서 가장 큰 수와

가장 작은 수를 찾아 변수에 넣습니다.

numarr = []
numarr.append(int(input("첫 번째 숫자를 입력하세요.")))
numarr.append(int(input("두 번째 숫자를 입력하세요.")))
a = max(numarr)
b = min(numarr)

#STEP2

변수 R에 a 를 b로 나눈 나머지를 넣습니다.

    R = a % b

 

#STEP 3

위에서 구한 R변수를 사용해서 R이 0이면 최대공약수

그렇지 않으면 a = b , b = R으로 변수 값을 바꿔주고

R이 0이 될 때까지 반복합니다.

 if (R != 0):
        a = b
        b = R

    else:
        print("최대공약수는"+ str(b) +"입니다.")
        break;

 

#전체 코드

#step 1
numarr = []
numarr.append(int(input("첫 번째 숫자를 입력하세요.")))
numarr.append(int(input("두 번째 숫자를 입력하세요.")))
a = max(numarr)
b = min(numarr)


while(1):
#step2
    R = a % b

#step3
    if (R != 0):
        a = b
        b = R

    else:
        print("최대공약수는"+ str(b) +"입니다.")
        break;