나눗셈 표현은 위의 5. 과 같다. 컴퓨터언어에서는 대부분 a / b 라는 표현 방식을 사용한다.

 

분수를 fractional form 이라 하는데 fractional 조각 조각 분리되어 있다는 뜻이다.

 

바로 연습문제를 풀어본다.

 

 

1. 5 곱하기  a 나누기 c

 

-> 5a/c

 

2. y 센트에 얼마나 많은 달러가 있느냐? (y센터는 달러로 얼마냐)

 

-> 1 달러는 100 센트이다.

 

100 센트 = 1 달러

 

1 센트 = 1 / 100 달러

 

y * 1센트 = y * 1/100달러

 

y 센트 = y/100달러

 

y cent = y/100 dollar

 

 

3. 한권에 a 다임인 책을 x 다임으로 몇개 살수 있는가? (다임은 10센트 동전 하나다) 

 

1 book = a dime

-> 1권의 책은 a 다임이다.

 

x dime

-> 가진 돈이 x 다임이다.

 

x / a 권

 

x를 a 로 나누면 권수가 나온다.

 

4. 한 남자가 m 달러를 벌기위해 며칠을 일해야 겠는가? 하루에 y 달러를 번다고 가정한다.

 

y 달러/일 = 하루에 버는 금액

m 달러 = 벌어야 하는 금액

 

 m 달러 / y  달러

 

총금액을 일당 버는 금액으로 나누면 된다. m/y (일)이다.

 

5. b 배럴의 밀가루에 x 달러가 들었다. 배럴당 비용은 얼마인가?

 

-> 배럴은 저장하는 통의 단위다. 배럴당 비용을 알고 싶으면 전체 금액에서 배럴의 개수를 나누면 된다.

 

x / b 달러

 

6. a 더하기 b 나누기 c

 

(a+b) / c

 

순서와 괄호 묶음에 주의한다.

 

16. 30개의 사과를 두 아이에게 나눠준다. 더 어린 아이가 나이 많은 아이의 2/3 만큼 가져가게 한다.

 

    x = 나이 많은 아이의 사과 갯수

2/3x = 어린 아이의 사과 갯수

 

x + 2/3x = 30 = 총 사과 갯수

 

3/3x + 2/3x = 30

5/3x = 30

1/3x = 6

x = 18

 

나이 많은 아이 18개 (형)

나이 적은 아이 12개 (동생: 형의 3분의2)

 

파이썬으로 한번 풀어보자.

 

import fractions as fr

younger = 0
oldder = 0
total_apple = 30
rate = fr.Fraction(2,3)

oldder = total_apple / (1 + rate)
younger = oldder * rate

print('나이 어린 아이 사과:', int(younger), '개')
print('나이 많은 아이 사과:', int(oldder), '개')
print('동생은 형의', rate,'분량을 가져간다')

파이썬에서 나눗셈을 한다는 것은 실수형을 사용한다는 말과 같다. 그런데 실수형은 정확하지가 못하다. 1/3 같은 무한반복이 안되니까 여러번 연산하다가는 손실이 되서 숫자를 못써먹게 된다.

 

이런 경우 fraction 모듈을 쓰면 원래의 기대처럼 작동을 잘한다. 실수로도 작동은 하지만 아무래도 모듈이 많이 보완한다고 본다.

 

 

변수를 만들 때 초기화에 항상 주의한다. 수학은 머리속에서 갑자기 꺼내서 변수를 만들 수 있지만 컴퓨터는 메모리 상에 지정해줘야 비로소 사용할 수 있게 된다. 그나마 파이썬은 변수의 정의 규칙이 간단해서 처음부터 손쉽게 접근할 수 있다.

 

수식을 세울 때는 기준을 컴퓨터에 맞춘다. 즉 컴퓨터가 최종 결과까지 만들기 전에 필요해야 하는 자료를 단계적으로 제공해야 한다. 연산이 안된 내용을 막 짚어넣으면 안된다.

 

주어진 문제를 잘 읽으면 윤곽이 나온다. 30개의 사과는 나온 것이고  형과 동생이 가진 사과의 비율이 2/3 라는 것만 알면 식으로 정리가 된다. 

 

이 포스팅까지가 대수의 사칙연산 덧셈, 뺄셈, 곱셈, 나눗셈이다.

 

다음 포스팅은 좀 더 대수적인 표현들을 다룬다.

공유하기

facebook twitter kakaoTalk kakaostory naver band