숫자에는 우리가 미처 알지 못했던 흥미로운 규칙과 비밀이 숨어 있습니다. 이번 포스팅에서는 몇 가지 간단한 규칙을 통해 숫자의 매력을 탐구해볼까요? 각 숫자의 배수성 판단을 위한 재미있는 규칙을 살펴보며, 이를 효율적으로 활용할 방법에 대해 알아보겠습니다.
2의 배수: 마지막 자리가 짝수인지 확인
숫자가 짝수인지 판단하는 가장 간단한 방법은 마지막 자리를 보는 것입니다. 마지막 자리가 0, 2, 4, 6, 8 중 하나라면 그 숫자는 짝수입니다.
예시:
- 12 → 짝수
- 35 → 홀수
number = 12
if number % 2 == 0:
print(f"{number}은 짝수입니다.")
else:
print(f"{number}은 홀수입니다.")
3의 배수: 각 자리 숫자의 합
어떤 숫자가 3의 배수인지 확인할 때, 각 자리 숫자의 합이 3으로 나누어지는지 확인하면 됩니다.
예시:
- 27 → (3의 배수)
- 134 → (3의 배수가 아님)
def is_multiple_of_3(number):
digit_sum = sum(int(digit) for digit in str(number))
return digit_sum % 3 == 0
number = 27
if is_multiple_of_3(number):
print(f"{number}은 3의 배수입니다.")
else:
print(f"{number}은 3의 배수가 아닙니다.")
4의 배수: 마지막 두 자리가 4의 배수
숫자가 4의 배수인지 확인하려면 마지막 두 자리가 4로 나누어떨어지는지 보면 됩니다.
예시:
- 316 → (4의 배수)
- 123 → (4의 배수가 아님)
number = 316
last_two_digits = int(str(number)[-2:])
if last_two_digits % 4 == 0:
print(f"{number}은 4의 배수입니다.")
else:
print(f"{number}은 4의 배수가 아닙니다.")
5의 배수: 마지막 자리가 0 또는 5
5의 배수인지 확인하려면 숫자의 끝이 0이나 5인지 확인하세요.
예시:
- 25 → 5의 배수
- 42 → 5의 배수가 아님
number = 25
if str(number)[-1] in ('0', '5'):
print(f"{number}은 5의 배수입니다.")
else:
print(f"{number}은 5의 배수가 아닙니다.")
6의 배수: 2의 배수이면서 3의 배수
숫자가 6의 배수인지 확인하려면 두 가지 조건을 모두 만족해야 합니다: 짝수이면서 각 자리 숫자의 합이 3으로 나눠져야 합니다.
예시:
- 18 → 짝수이고 (3의 배수, 따라서 6의 배수)
- 20 → 짝수지만 (3의 배수가 아님)
def is_multiple_of_6(number):
return number % 2 == 0 and sum(int(digit) for digit in str(number)) % 3 == 0
number = 18
if is_multiple_of_6(number):
print(f"{number}은 6의 배수입니다.")
else:
print(f"{number}은 6의 배수가 아닙니다.")
7의 배수: 독특한 규칙
7의 배수를 확인하는 규칙은 다소 복잡할 수 있습니다. 숫자에서 나누기 10을 한 몫에서 1의 자리 숫자에 2를 곱한 숫자를 뺍니다.
예시:
- 371 → 37 - (1 x 2), 35는 7의 배수
def is_multiple_of_7(number):
while number > 99:
last_digit = number % 10
remaining_number = number // 10
number = remaining_number - (last_digit * 2)
return number % 7 == 0
number = 371
if is_multiple_of_7(number):
print(f"{number}은 7의 배수입니다.")
else:
print(f"{number}은 7의 배수가 아닙니다.")
8의 배수: 마지막 세 자리에 주목하라
숫자가 8의 배수인지 확인하려면 마지막 세 자리가 8로 나누어떨어지는지 보면 됩니다.
예시:
- 1048 → (8의 배수)
- 1234 → (8의 배수가 아님)
number = 1048
last_three_digits = int(str(number)[-3:])
if last_three_digits % 8 == 0:
print(f"{number}은 8의 배수입니다.")
else:
print(f"{number}은 8의 배수가 아닙니다.")
9의 배수: 각 자리 수의 합이 9의 배수
각 자리 숫자의 합이 9로 나누어지는지 확인하면 그 숫자가 9의 배수인지 알 수 있습니다.
예시:
- 729 → (9의 배수)
- 812 → (9의 배수가 아님)
def is_multiple_of_9(number):
digit_sum = sum(int(digit) for digit in str(number))
return digit_sum % 9 == 0
number = 729
if is_multiple_of_9(number):
print(f"{number}은 9의 배수입니다.")
else:
print(f"{number}은 9의 배수가 아닙니다.")
마무리: 숫자의 규칙을 활용해보세요!
이렇게 다양한 숫자의 규칙들을 알고 있다면, 숫자와 관련된 문제를 더 빠르고 효율적으로 풀 수 있습니다. 간단한 규칙 하나가 큰 차이를 만들어낼 수 있죠. 앞으로 숫자를 다룰 때 이러한 규칙을 떠올리며 활용해 보세요!
독자에게 질문!
- 숫자 2532는 어떤 규칙에 해당할까요?
- 여러분이 알고 있는 다른 흥미로운 숫자 규칙은 무엇인가요?
댓글로 여러분의 생각을 나눠보세요! 😊
'알고리즘' 카테고리의 다른 글
최대공약수(GCD)를 구하는 방법 (0) | 2024.11.21 |
---|---|
소수 판별: 비효율부터 최적화까지 (0) | 2024.11.20 |
최단경로 알고리즘 BFS, 다익스트라, 벨만-포드, 플로이드 와샬 (0) | 2022.03.24 |
최대 공약수 (With. 유클리드 호제법) (0) | 2021.10.28 |