수학과 알고리즘/중등 수학

정수와 유리수(1)

세안_ 2024. 11. 1. 17:18

들어가며

안녕하세요, 이번 포스팅에서는 새로운 개념인 정수와 유리수라는 새로운 개념에 대해서 알아보고,
해당 개념을 파이썬 프로그래밍으로 구현해보도록 하겠습니다.
먼저, 정수와 유리수의 개념에 대해서 알아보겠습니다.

정수

정수음의 정수, 0, 양의 정수를 포함하는 수를 가리키는 말입니다.
정수는 소수나 분수처럼 불완전한 형태가 아닌 완전한 수, 또는 명확하게 세어지는 수로 이해하면 되겠습니다.
일상 생활에서 물건의 개수를 세거나, 온도를 나타낼 때 쓰는 숫자들은 모두 정수라고 볼 수 있습니다.

그 중에서도, 양수는 우리가 무언가를 얻었을 때나, 여기에 있다(존재한다)라는 것을 표현하는 것이라면,
음수는 무언가를 잃었을 때라고 생각하면 되겠습니다.
0은 아무것도 없는 상태를 나타냅니다.

유리수

유리수정수와 정수의 나눗셈으로 나타낼 수 있는 수입니다.
두 정수 $p$와 $q$가 있을 때, $q$가 0이 아닌 한 $p/q$의 형태로 나타낼 수 있는 수를 유리수라고 합니다.

  • 예시 : $1/2$, $-3/4$, $5$ ...
    • 정수도 분모를 $1$로 나누면 유리수가 됩니다
  • 유리수는 유한 소수 또는 무한 소수 중 반복되는 패턴이 있는 소수로 표현될 수 있습니다

쉽게 설명하자면:

  • 피자를 예로 들면, 피자 한 판을 반으로 잘랐을 때, 각각의 조각은 전체의 1/2라고 할 수 있습니다.
    이렇게 전체를 몇 개로 나누었을 때 그 조각들을 나타내는 수가 유리수라고 할 수 있습니다.
  • 유리수는 정수를 포함하면서도 두 정수의 나눗셈으로 나타낼 수 있는 수로 생각할 수 있는데,
    예를 들어, $0.5$는 $1/2$로 나타낼 수 있으며, 1과 2는 각각 정수이므로 0.5는 유리수라고 할 수 있는 것입니다.

잘 이해되지 않는다면

  • 정수는 "세어지는 수, 즉 0을 기준으로 위아래로 늘어선 수"들입니다.
  • 유리수는 "나눌 수 있는 수, 즉 두 정수를 나눠서 나타낼 수 있는 수"입니다.
  • 그래서 수의 범위에서는 유리수가 정수를 포함하는 보다 큰 개념이라고 볼 수 있습니다.

코드

1. 양수와 음수, 0

numbers = [-5, 0, 10, -3, 7]

for num in numbers:
    if num > 0:
        print(f"{num}은(는) 양수입니다.")
    elif num < 0:
        print(f"{num}은(는) 음수입니다.")
    else:
        print(f"{num}은(는) 0입니다.")

해당 코드에서 0보다 크면 양수, 작으면 음수, 같으면 0을 나타내도록 했습니다.
정수의 범위에서 볼 때, 기준이 되는 값과 어떤 숫자와의 관계는 크거나, 작거나, 같다는 3가지 관계 밖에 없습니다.
여기서 기준을 0으로 두면, 0보다 크거나(양수), 0보다 작거나(음수), 0과 같거나(0)이라는 3가지 관계가 나오게 됩니다.

2. 음수는 왜 필요할까?

예를 들어 은행에서 돈을 인출하려고 한다고 생각해봅시다.
하지만 만약에 은행에 있는 돈보다 더 많은 돈을 인출하려고 한다면, 잔고를 어떻게 표현해야할까요?

# 은행 계좌 잔고 예시
balance = 1000  # 현재 계좌 잔고 (양수)
withdraw_amount = 1200  # 출금하려는 금액 (양수)

balance -= withdraw_amount  # 출금 후 잔고 계산

print(f"잔고: {balance}원")  # 음수 잔고 출력

위의 코드에서 출금 금액이 잔고보다 많기 때문에 결과적으로 잔고는 -200원이 됩니다.
없는 돈을 출금할 수 없기 때문에, 이러한 경우에는 금액이 출력되지 않아야 합니다.
이런 식으로 존재하지 않는다는 개념을 표현할 때 음수를 사용하게 됩니다.

3. 정수와 유리수의 개념

이번에는 정수와 유리수를 각각 구현해봅시다.

# 정수와 유리수의 예시
integer = 4  # 정수
rational = 3 / 4  # 유리수

print(f"정수 예시: {integer}")
print(f"유리수 예시: {rational}")

파이썬에서는 기본적으로 숫자를 입력하면 정수로 인식되며, 나눗셈을 이용하면 유리수(실수)로 변환됩니다.
때문에 앞서 배웠던 정수와 유리수의 개념을 그대로 코드로 구현하면, 위와 같이 구현할 수 있겠습니다.

오늘은 수의 범위와 개념에 대한 내용이기 때문에, 다른 시간보다 간단하게 구현할 수 있었습니다.
다음 포스팅에는 '정수와 유리수의 대소 관계'에 대해서 구현해보도록 하겠습니다.
감사합니다.