본문 바로가기
컴퓨터

순서도 [Flow Chart]

by Luyin 2012. 9. 11.

순서도 [Flow Chart]


일상 생활에서 주어진 과제를 완수하거나 어떤 문제를 해결하는 데 있어, 해야 할 일의 순서를 정해 놓고 미리 계획된 방법에 따라 작업을 진행시키면 착오를 막을 수 있을 뿐만 아니라 이해하기가 쉽고, 능률적일 때가 많다.


이를테면 A씨가 B씨에게 전화를 걸어 어떤 일을 상의
하는 경우를 생각해 보기로 하자.

이 때, A씨가 할 일과 그 순서를 정리해 보면 다음과 같다.

  1. 다이얼을 돌린다.
  2. 통화중인가 주의한다.
  3. 통화중이면 기다린다.
  4. 전화가 통하면 B씨를 찾는다.
  5. B씨가 응답하면 용건을 말한다.
  6. B씨가 집에 없으면 전할 내용을 가족에게 말한다.
  7. 전화기를 놓고 끝낸다.

이와 같이, 어떤 일의 처리나 문제를 해결할 때, 그 처리 과정이나 해결 절차를 알고리즘(algorithm)이라 하고, 알고리즘을 그림으로 나타낸 것을 순서도(flow chart)라 한다.
위의 처리 절차를 순서도로 나타내면 오른쪽 그림과 같다.

프로그램을 작성할 때에 순서도를 사용하면 해결 과정의 논리적 단계를 쉽게 파악할 수 있을 뿐만 아니라, 프로그램에 오류가 발생하는 경우에도 쉽게 수정할 수 있다.

일반적으로, 알고리즘과 순서도는 문제 해결의 과정을 나타낸 것이므로 사람마다 다를 수 있으나, 그 처리 과정은 누구나 알 수 있도록 일목요연하고 체계적으로 작성해야 한다. 컴퓨터 프로그램의 순서도를 작성할 때의 기본 원칙은 다음과 같다.

  • 표준 기호를 사용한다.
  • 순서도의 흐름을 위쪽에서 아래쪽으로 하고, 흐름이 서로 교차하지 않도록 작성한다.
  • 설명은 기호 안에 간단하게 삽입한다.

순서도의 표준 기호 는 다음과 같다.

A, B 두 지역 사이의 시외 전화 요금은 3분 통화마다 200원씩 올라간다고 한다. 통화 시간이 a 분 (a < 9 ) 일 때, 시외 전화 요금을 계산하는 순서도를 작성하여라.

a 분 통화할 때의 시외 전화 요금을

S 라고 하면

3분 까지는 200원이므로 a < 3 이면
S = 200이고, a 3 이면 로 간다.

a < 6 이면 S = 400 이고,
a 6 이면 으로 간다.

a < 9 이면 S = 600 이다.

위의 알고리즘에 따라 순서도를 그리면 왼쪽 그림과 같다.

어느 도시의 수도 요금은 100kg 미만까지는 기본 요금 1000원이고, 100kg 이상 150kg 까지는 kg당 40원이라고 한다. 수돗물을 a kg (a < 150)사용하였을 때, 수도 요금을 계산하는 순서도를 작성하여라.

다음 합을 구하는 순서도를 작성하여라.
1 + 2 + 3 + ..... + 50
1 + 2 = 3 , 3 + 3 = 6 , 6 + 4 = 10 , 10 + 5 = 15 , ..... 와 같이 덧셈을 반복하여 계산한다. 즉,
  • 1에 2를 더하고 그 결과에 3을 더한다.
  • 위의 결과에 4를 더하고, 그 결과에 5를 더한다.
  • 위의 절차를 50을 더할 때까지 계속한다

위의 절차를 변수를 써서 나타내면 다음과 같다.

먼저 S를 1로 하고 N을 2로 한다.
S+N 의 결과인 3을 다시 S 로 한다.
N+1 의 값 3을 다시 N으로 한다.
N 50 이면 로 가서 , 의 과정을 계속하고,
N > 50이면 로 간다.

S 를 답으로 한다.

위의 알고리즘에 따라 순서도를 그리면 그림과 같다.

의 값을 구하는 순서도를 다음 순서에 따라 작성하여라.

먼저 S 를 1로 놓고 N 을 2로 한다.
의 결과인 2를 다시 S 로 한다.
N + 1 의 값 3을 다시 N 으로 한다.
N 20 이면 , 의 과정을 계속한다.
N > 20 이면 으로 간다.
S 를 답으로 한다.