합성수를 소수의 곱으로 나타내는 방법
합성수는 1과 자기 자신이 아닌 다른 자연수의 곱으로 나타낼 수 있는 자연수이다. 1보다 큰 모든 정수는 소수이거나 합성수이다.
소수는 양의 약수가 1과 자기 자신 뿐인 1보다 큰 자연수이다.
20 이하 합성수의 소인수분해
4=2×2
6=2×3
8=2×2×2
9=3×3
10=2×5
12=2×2×3
14=2×7
15=3×5
16=2×2×2×2
18=2×3×3
20=2×2×5
코드
def factors(num):
for i in range(1, num+1):
if num % i == 0:
print(i)
# 프로그램 실행되는 메인함수를 의미합니다
if __name__ == '__main__':
num = float(input('Your Number Please: '))
if num > 0 and num.is_integer():
factors(int(num))
else:
print('Please enter a positive integer')
코드 돌려보자
4
>Your Number Please: 4
>1
>2
>4
6
>Your Number Please: 6
>1
>2
>3
6
8
>Your Number Please: 8
>1
>2
>4
8
9
>Your Number Please: 9
>1
>3
>9
10
>Your Number Please: 10
>1
>2
>5
10
12
>Your Number Please: 12
>1
>2
>3
>4
>6
>12
14
>Your Number Please: 14
>1
>2
>7
>14
15
>Your Number Please: 15
>1
>3
>5
>15
16
>Your Number Please: 16
>1
>2
>4
>8
>16
18
>Your Number Please: 18
>1
>2
>3
>6
>9
>18
20
>Your Number Please: 20
>1
>2
>4
>5
>10
>20