Page 38 고등학교 프로그래밍 교과서
P. 38










3 알고리즘 설계 및 구현하는 방법을 알아보자






컴퓨터 프로그래밍을 통해 문제를 해결하기 위해서는 알고리즘을 잘 설계하고 구
현해야 한다.


1 알고리즘 설계
알고리즘 설계는 문제 해결 방법을 찾는 과정을 나타내는 것으로, 문제를 이해하여

체계적이면서 논리적으로 결과를 얻을 수 있는 방법들을 생각하는 단계이다.
좋은 알고리즘을 설계할 때 고려해야 할 사항들은 다음과 같다.

첫째, 문제를 해결하는 알고리즘을 찾기 전에 문제를 완벽하게 이해해야 한다. 그
주어진 문제를 러기 위해서는 문제가 요구하는 결과가 무엇이고, 주어진 조건이 무엇인지 명확하게
해결하기 위해서는 먼저 분석해야 한다.
문제를 분석하고,
문제 해결을 위한 과정인 둘째, 해결하려는 문제와 같은 유형의 문제를 해결할 수 있는 일반적인 알고리즘을
알고리즘을 설계해야 해.
익혀야 한다. 다른 사람들이 개발한 유용한 알고리즘 기법들을 이해할 때 새롭고 유
용한 알고리즘들을 보다 쉽게 설계할 수 있게 되는 것이다.

셋째, 주어진 문제를 해결하는 과정이 복잡한 경우에는 이를 여러 개의 작은 단위
로 나누어 작성하는 것이 바람직하다. 이러한 방법을 서브 알고리즘이라고 한다. 서
브 알고리즘은 복잡한 문제를 해결할 때 이해하기 쉽고 관리하기 편리한 프로그램을

만들기 위하여 사용한다.


2 알고리즘 기본 구조
알고리즘 설계를 위한 기본 구조로는 순차 구조, 선택 구조, 반복 구조가 있다. 실

제 알고리즘 설계에서는 이 기본 구조가 문제 상황에 적합하게 융합되어 사용된다.
① 순차 구조: 시간적 순서에 따라 차례대로 수행되는 구조이다.
② 선택 구조: 주어진 조건에 따라 실행 내용이 다르게 진행되는 구조이다.

③ 반복 구조: 주어진 조건에 따라 특정 부분을 반복하여 실행하는 구조이다.


예 아니요
처리 1 아니요
조건
조건
처리 2 예 처리 2
처리 1 처리 2
처리 1
처리 3
순차 구조 선택 구조 반복 구조

[그림Ⅰ- 8] 알고리즘 설계를 위한 기본 구조


36 Ⅰ . 프로그래밍의 개요





(책)2015프로그래밍-교과서3차심의본 본문.indb 36 2017-09-05 오후 4:15:48
   33   34   35   36   37   38   39   40   41   42   43