5. 연산

【배우기】


엔트리로 해보자

파이선으로 해보자

변수를 활용하면 덧셈, 뺄셈, 곱셈, 나눗셈 등의 연산에 유용하게 사용할 수 있다. 두 수 또는 여러 가지의 수를 계산하는 프로그램을 만들 수 있다.


이미지. 계산기 그림

1엔트리로 해보자

가. 변수 만들기
이미지. 속성탭의 스크린샷

[속성] 탭의 변수 추가하기로 [수] 변수 추가하기

[속성] 탭의 변수 추가하기로 [합] 변수 추가하기

나. 1부터 10까지의 합 구하기
1) 변수 초기 값 설정하기
이미지. 시작하기 버튼을 클릭했을 때 블록, 수를 0로 정하기 블록, 합을 0으로 정하기 블록이 연결되어 있는 스크린샷

[예제코드]

[시작] 꾸러미 - [시작하기 버튼을 클릭했을 때] 블록

[자료] 꾸러미 - [수 O로 정하기] 블록

[수 O로 정하기] 블록의 O에 0 입력하기

[자료] 꾸러미 - [합 O로 정하기] 블록

[합 O로 정하기] 블록의 O에 0 입력하기

[실행결과]
이미지. 합이 0 수가 0인 화면의 스크린샷
2) 1부터 10까지의 합 말하게 하기
이미지. 시작하기 버튼을 클릭했을 때 블록, 수를 0로 정하기 블록, 합을 0으로 정하기 블록에 연결된 10 번 반복하기 블록, 수에 1만큼 더하기 블록, 합을 합 값 + 수 값으로 정하기 블록이 있고, 1부터 10까지의 합값을 합치기를 2초동안 말하기 블록이 연결되어 있는 스크린샷.

[예제코드]

[흐름] 꾸러미 - [O번 반복하기 때] 블록

[O번 반복하기 때] 블록의 O에 10 입력하기

[자료] 꾸러미 - [수에 O 만큼 더하기] 블록

[수에 O 만큼 더하기] 블록의 O에 1 입력하기

[자료] 꾸러미 - [합을 O로 정하기] 블록

[합을 O로 정하기]의 O에 [계산] 꾸러미의 [O+O] 블록을 이용해 합 값 + 수 값 입력하기

[계산] 꾸러미의 [O과(와) O를 합치기] 블록을 이용해 1부터 10까지의 합과(와) 합값을 합치기 블록 만들기

[생김새] 꾸러미의 [O을(를) O초 동안 말하기] 블록

[O을(를) O초 동안 말하기] 블록에 1부터 10까지의 합은 과(와) 합값을 합치기 2초 동안 말하기 입력하기

[실행결과]
이미지. 1부터 10까지 합 말하기 동영상의 스크린샷
다. 코딩해보기
1) 1부터 100까지 홀수의 합을 말하도록 만들어 보자
이미지.시작하기 버튼을 클릭했을 때 블록, 수를 1로 정하기 블록, 합을 9로 정하기 블록, 50번 반복하기 블록, 합을 합값 + 수 값 정하기 블록, 수에 2만큼 더하기 블록, 1부터 100까지의 홀수의 합은 와 합값을 합치기를 2초동안 말하기 블록이 연결되어 있는 스크린샷
[실행결과]
이미지. 1부터 100까지 홀수의 합을 말하는 동영상의 스크린샷
2) 1~100사이의 수를 하나 선택하는 물음의 대답을 들은 후 1부터 대답한 수까지의 합을 구할 수 있게 만들어 보자
이미지. 시작하기 버튼을 클릭했을 때 블록, 1에서 100까지의 수 중 한개를 선택하세요를 묻고 대답하기 블록, 수를 0로 정하기 블록, 합을 0로 더하기 블록에 연결되어 있는 대답번 반복하기 블록에수에 1만큼 더하기 블록, 합을 합값 + 수 값로 정히기 블록. 1부터 대답까지를 합치기와 까지의 수의 합을 합치기 와 합값을 합치기를 말하기 블록이 있는 스크린샷.
[실행결과]
이미지. 1부터 100까지 중에 대답한 수까지의 합을 구하는 동영상의 스크린샷

2파이선으로 해보자

가. 산술 연산자란?

산술 연산자란 파이선에서 기본적인 계산을 할 때 사용되는 것을 말한다. 일반적으로 +, -, *, /의 사칙연산이 대표적이며, 많이 사용하는 산술 연산자는 다음과 같다.

산술 연산자 설명 예시 예시 설명
+ 더하기 a=1+2 1과 2를 더한 값을 a에 대입
- 빼기 a=2-1 2에서 1을 뺀 값을 a에 대입
* 곱하기 a=2*3 2와 3을 곱한 값을 a에 대입
/ 나누기 a=6/2 6을 2로 나눈 값을 a에 대입
= 대입 연산자 a=1 정수 1을 a에 대입
// 나누기(몫) a=6//4 6을 4로 나눈 뒤 소수점을 버리고 a에 대입
% 나머지 값 a=6%4 6을 4로 나눈 뒤 나머지 값을 a에 대입
** 제곱 a=2**4 2의 4제곱을 a에 대입
나. 연산의 우선순위
‘1+2*3’과 같은 수식을 계산한다고 할 경우 덧셈보다 곱셈을 먼저 계산해야 한다. 곱셈 연산이 덧셈 연산보다 연산 순위에서 우위에 있기 때문이다. 연산의 우선순위는 다음과 같다.

1) 괄호 안의 계산

2) 곱셈 또는 나눗셈

3) 덧셈 또는 뺄셈

4) 같은 순위일 경우 왼쪽에서 오른쪽 순서로 계산

예제코드,5_1.py

a=3+4

b=7-2.6

c=3*-2

d=6/4

e=6//4

f=6%4


print(a,b,c,d,e,f)

이미지. 4_2.py의 순서도. 시작,a=3+4, b=7-2.6,c=3*-2,d=6/4,e=6//4,f=6%4,print(a,b,c,d,e,f), 종료
실행결과

> 5_1.py

7 4.4 -6 1.5 1 2

변수 a에는 3 더하기 4의 연산 값인 7, 변수 b에는 7 빼기 2.6의 값인 4.4, 변수 c에는 3 곱하기 -2의 값인 -6, 변수 d에는 6 나누기 4의 값인 1.5, 변수 e에는 6 나누기 4에서 소수점 이하인 0.5를 버린 몫의 값인 1, 변수 f에는 6 나누기 4의 나머지 값인 2가 대입된다.

다. 코딩해 보기
1) 4 곱하기 8의 값을 가지는 변수 a를 만든 후 “4곱하기 8은 ‘변수 a의 값’입니다.”가 출력되도록 코딩해 보자.

a=4*8

print(“4곱하기 8은”, a, “입니다.”)

2) 13 나누기 3의 나머지 값과 5 나누기 2의 나머지 값의 합이 출력되도록 코딩해 보자.

a=13%3

b=5%2

c=a+b

print(c)

생각해 보기

1) 변수 a에는 5 나누기 2의 나머지 값을 대입하고, 변수 b에는 3곱하기 4의 값을 대입한 후, a와 b의 곱이 출력되도록 코딩해 보자.

2) 변수 c에는 2의 4제곱을 대입하고, 변수 d에는 3의 3제곱을 대입한 후 두 수중 더 큰 수가 출력되도록 코딩해 보자.

3) 다음 표는 혜은이의 시험 점수이다. 과목의 총점과 평균이 출력되도록 코딩해 보자.

과목 점수
국어 100
수학 80
사회 96
과학 97