3. 계산하기 (연산)
숫자를 더하고 빼고 곱하고 나눠요.
이 장에서 배울 것
- 사칙연산과 나머지 (
+-*/%)- 계산 순서와 괄호
- 이름표의 값을 늘리고 줄이기 (
더하자,빼자)- 계산할 수 없는 경우
계산 기호
| 기호 | 뜻 | 예 | 결과 |
|---|---|---|---|
+ |
더하기 | 7 + 2 |
9 |
- |
빼기 | 7 - 2 |
5 |
* |
곱하기 | 7 * 2 |
14 |
/ |
나누기 | 7 / 2 |
3.5 |
% |
나머지 | 7 % 2 |
1 |
계산한 값을 바로 출력하려면 식을 괄호로 감싸서 출력하면 돼요.
(7 + 2)를 출력하자
(7 / 2)를 출력하자
(7 % 2)를 출력하자
9, 3.5, 1이 나와요. 나누기는 나누어떨어지지 않으면 소수점까지 계산해요.
계산 결과를 이름표에 담을 수도 있어요.
'가로'를 8로 정하자
'세로'를 5로 정하자
'넓이'를 '가로' * '세로'로 정하자
틀"넓이는 {'넓이'}예요."를 출력하자
계산 순서와 괄호
한 식에 여러 계산이 있으면 학교에서 배운 순서 그대로 해요.
- 괄호 안을 가장 먼저
- 곱하기·나누기·나머지(
*/%)를 그다음 - 더하기·빼기(
+-)를 마지막에 - 같은 단계끼리는 왼쪽부터
(2 + 3 * 4)를 출력하자
((2 + 3) * 4)를 출력하자
(100 / 10 / 5)를 출력하자
2 + 3 * 4는 곱하기를 먼저 해서2 + 12=14(2 + 3) * 4는 괄호를 먼저 해서5 * 4=20100 / 10 / 5는 왼쪽부터10 / 5=2
순서가 헷갈릴 때는 먼저 계산하고 싶은 부분을 괄호로 묶으세요. 괄호를 더 써도 결과는 틀리지 않아요.
나머지(%)는 어디에 쓸까요?
나머지는 생각보다 자주 써요. 대표적인 것이 짝수·홀수 알아보기예요. 2로 나눈 나머지가 0이면 짝수, 1이면 홀수예요.
'수'를 17로 정하자
'나머지'를 '수' % 2로 정하자
틀"{'수'}를 2로 나눈 나머지는 {'나머지'}예요."를 출력하자
1이 나오니까 17은 홀수예요. (조건에 따라 “짝수”, “홀수”를 출력하는 법은 5장에서 배워요.)
이름표의 값을 늘리고 줄이기
이름표의 값을 계산한 결과로 바꿀 때는 정하자를 다시 써요.
'점수'를 50으로 정하자
'점수'를 '점수' * 2로 정하자
'점수'를 출력하자
100이 나와요. 오른쪽의 '점수' * 2가 먼저 계산되고(50 × 2), 그 결과가 '점수'에 다시 담겨요.
더하기와 빼기는 자주 쓰여서 줄여 쓰는 방법이 있어요.
'체력'을 100으로 정하자
'체력'에서 15를 빼자
'체력'에 5를 더하자
틀"남은 체력: {'체력'}"을 출력하자
남은 체력: 90이 나와요.
| 줄여 쓰기 | 같은 뜻 |
|---|---|
'x'에 5를 더하자 |
'x'를 'x' + 5로 정하자 |
'x'에서 5를 빼자 |
'x'를 'x' - 5로 정하자 |
음수와 소수
음수는 숫자 앞에 -를 붙여요. 이름표나 계산 결과 앞에 붙여도 부호가 바뀌어요.
'온도'를 -3으로 정하자
'반대'를 -'온도'로 정하자
'반대'를 출력하자
3이 나와요. 소수는 점을 찍어 써요(3.14). 컴퓨터는 소수를 2진법으로 다뤄서 0.1 + 0.2가 0.30000000000000004처럼 아주 조금 어긋나게 나올 수 있어요. 대부분의 프로그래밍 언어가 같아요. 깔끔하게 보이고 싶다면 12장의 <반올림>을 쓰면 돼요.
계산할 수 없을 때
0으로 나누기는 어떤 수로도 정할 수 없어서 오류가 나요.
(10 / 0)를 출력하자
“0으로 나눌 수 없어요.” 가 나와요. 나누는 수가 0이 될 수도 있다면, 5장에서 배울 만약으로 먼저 확인하세요.
글자와 숫자는 그대로 계산할 수 없어요. 2장에서 본 것처럼 <숫자로>나 <문자로>로 종류를 맞춰 주세요.
("10" + 5)를 출력하자
(<숫자로>("10") + 5)를 출력하자
자주 하는 실수
1. 식을 괄호로 감싸지 않고 출력
7 + 2를 출력하자처럼 쓰면 하리가 어디까지가 식인지 헷갈릴 수 있어요. 계산식을 출력할 때는 (7 + 2)를 출력하자처럼 괄호로 감싸는 습관을 들이세요.
2. 계산 순서를 착각
평균을 구할 때 '국어' + '수학' / 2라고 쓰면 나누기를 먼저 해서 틀린 값이 나와요. ('국어' + '수학') / 2처럼 괄호로 묶으세요.
'국어'를 80으로 정하자
'수학'을 90으로 정하자
('국어' + '수학' / 2)를 출력하자
(('국어' + '수학') / 2)를 출력하자
첫 줄은 125(틀림), 둘째 줄은 85(맞음)가 나와요.
정리
| 하고 싶은 일 | 쓰는 법 |
|---|---|
| 계산해서 출력 | (7 + 2)를 출력하자 |
| 계산해서 담기 | '넓이'를 '가로' * '세로'로 정하자 |
| 먼저 계산할 부분 | 괄호 ( ) |
| 나머지 | '수' % 2 |
| 늘리기·줄이기 | 'x'에 5를 더하자, 'x'에서 5를 빼자 |
| 부호 바꾸기 | -'x' |
더 많은 수학 도구(올림, 버림, 제곱근 등)는 11장과 12장에서 만나요.
연습 문제
1. 한 개에 1200원인 빵을 3개, 한 개에 800원인 우유를 2개 샀어요. 모두 얼마인지 출력해 보세요.
(참고) 여기에 써 보세요.
정답 예시
'빵값'을 1200 * 3으로 정하자
'우유값'을 800 * 2로 정하자
틀"모두 {'빵값' + '우유값'}원이에요."를 출력하자
모두 5200원이에요.가 나와요.
2. 100분은 몇 시간 몇 분인지 계산해 보세요. (힌트: 시간은 60으로 나눈 몫, 분은 60으로 나눈 나머지예요. 몫은 '분' - '분' % 60을 60으로 나누면 깔끔하게 구할 수 있어요.)
정답 예시
'전체'를 100으로 정하자
'분'을 '전체' % 60으로 정하자
'시간'을 ('전체' - '분') / 60으로 정하자
틀"{'시간'}시간 {'분'}분"을 출력하자
1시간 40분이 나와요.
3. 아래 코드는 세 과목의 평균을 구하려고 했지만 틀린 값이 나와요. 고쳐 보세요.
'평균'을 70 + 80 + 90 / 3으로 정하자
'평균'을 출력하자
정답 보기
나누기가 먼저 계산돼서 70 + 80 + 30 = 180이 나와요. 더하는 부분을 괄호로 묶어야 해요.
'평균'을 (70 + 80 + 90) / 3으로 정하자
'평균'을 출력하자
80이 나와요.
다음 장에서는 글자(문자열) 를 자르고 바꾸고 이어 붙이는 법을 배워요.