알고리즘 순서도 규칙 5가지 및 기호 (ft. 알고리즘 뜻)


알고리즘 순서도 만들기, 어렵지 않아요!

어떤 문제를 해결하기 위해서는 그에 필요한 방법이 필요합니다. 예를 들어 물을 쏟으면 마른 수건을 가져와서 닦아야겠다는 생각이 듭니다. 이는 우리가 살면서 자연스럽게 터득한 지혜와 방법인데요. 사람이 아닌 프로그램이 스스로 해결 방법을 떠올려서 생각하게 만들려면 어떻게 해야 할까요?

이번 글에서는 알고리즘 뜻을 먼저 알아본 후, 어떻게 알고리즘 순서도를 작성해야 할지 살펴보겠습니다.




목차

  1. 알고리즘 뜻
  2. 알고리즘 순서도 규칙 및 기호

다이어그램 일러스트

알고리즘 뜻


알고리즘이란 어떤 문제를 해결하기 위한 절차, 방법, 명령어들의 집합입니다. 즉, 주어진 문제를 논리적으로 해결하기 위해 필요한 과정 또는 방법을 의미합니다.

알고리즘은 특정한 일을 수행하며 문제를 해결한다는 점이 프로그램과 비슷합니다. 그러나 알고리즘은 문제를 풀어가는 과정이 유한한 명령어들의 집합으로 해결하고, 프로그램은 유한성이 만족되지 않아도 된다는 차이점이 있습니다.

아래에서 알고리즘 뜻을 더 쉽게 이해하기 위해 대표적인 특성을 살펴보겠습니다.


❶ 알고리즘 유형

  1. 정렬 알고리즘 – 자료를 오름차순 또는 내림차순으로 정렬하기 위한 알고리즘
  2. 탐색 알고리즘 – 저장된 자료 중 특정 자료를 찾기 위한 알고리즘

❷ 알고리즘 조건

  1. 명확성 – 각 명령어는 명확한 의미를 가짐
  2. 유한성 – 반드시 수행 후 종료됨
  3. 유효성 – 실행되는 모든 명령어는 오류 없이 실행할 수 있어야 함
  4. 입출력 – 입력에 따른 결과 출력
  5. 효율성 – 입력값에 따라 효율적으로 수행되어야 함

❸ 알고리즘 선택 기준

  1. 적정성 – 하드웨어 또는 소프트웨어에서 해당 알고리즘이 적정한가?
  2. 정확성 – 입력에 따른 결과가 정확한가?
  3. 효율성 – 시간 및 공간 복잡도가 효율적인가?

❹ 알고리즘 설계 기법

  1. 동적 계획법 – 큰 하나의 문제 해결이 어려운 경우, 작게 나누어 풀어서 해당 문제의 값을 저장하여 재사용하는 기법
  2. 분할과 정복 – 작은 부분으로 분할하여 해를 구하고 병합해가는 기법
  3. 백 트래킹 – 여러 후보 해 중 특정 조건을 충족하는 모든 해를 구하기 위해 이전으로 돌아가서 해를 찾는 기법
  4. 탐욕법 – 해당 단계에서 최선을 선택하여 최적의 해를 구하는 기법

❺ 알고리즘 복잡도

  1. 공간 복잡도 – 알고리즘 수행 시 메모리가 얼마나 필요한지에 대해 평가하는 척도
  2. 시간 복잡도 – 입력값에 대해 얼마만큼 연산을 수행하는지 계산해서 알고리즘의 수행시간을 평가하는 척도


알고리즘 순서도 규칙 및 기호


알고리즘 순서도는 알고리즘의 내용 또는 프로그램의 논리를 기호와 연결선으로 나타낸 것입니다. 여러 종류의 상자를 이용하여 단계와 순서를 화살표로 연결해서 보여주는 것인데요. 이러한 다이어그램은 주어진 문제에 대한 솔루션은 물론이고 다양한 분야의 프로세스를 분석, 설계, 관리하는 데에 사용됩니다.

알고리즘 순서도를 작성할 때는 아래의 규칙을 따라야 합니다.

  1. 기호 내부에 처리해야 할 내용이 들어가야 한다.
  2. 기호의 모형은 크기가 비슷해야 하고, 잘 구분할 수 있어야 한다.
  3. 순서는 위에서 아래, 왼쪽에서 오른쪽이 원칙이며, 그 외에는 화살표를 사용한다.
  4. 흐름선은 서로 교차해도 무관하며, 서로 영향을 주지 않는다.
  5. 흐름선은 여러 개가 모여 하나로 합칠 수 있다.


알고리즘 순서도 작성 시에는 국제 표준화 기구(ISO)에서 표준안으로 결의된 기호를 사용해야 합니다. 아래에서 알고리즘 순서도에 쓰이는 기호를 참고하세요.


❶ 흐름선

프로세스의 실행 순서

❷ 터미널

하위 프로세스 또는 프로그램의 시작과 끝

❸ 처리

데이터의 값, 형태, 장소를 변경하는 한 세트의 실행


❹ 판단

프로그램이 실행되는 2가지 경로 중 하나를 결정하는 조건부 실행 (예/아니오 질의 또는 참/거짓 검사)

❺ 입력·출력

데이터를 입력 및 출력

❻ 주석

보는 사람의 편의를 위한 주석


❼ 서브 루틴

다른 곳에 정의되어 명명된 프로세스

❽ 페이지 내 연결자

정보가 기재된 연결자의 쌍은 순서도의 한 페이지에서 길거나 혼란스러운 선을 대체하며, 내부에 글자가 기재된 작은 원으로 표현함

❾ 페이지 간 연결자

연결하려는 대상이 다른 페이지에 있을 때 사용하며, 내부에 정보가 기재됨


❿ 데이터 파일 또는 데이터베이스

실린더로 표현되는 데이터

⓫ 단일 문서

⓬ 다수 문서


⓭ 메뉴얼 실행

수동으로만 실행하는 경우

⓮ 메뉴얼 입력

⓯ 준비 또는 초기화



추가로 실제로 알고리즘 순서도를 그릴 수 있는 사이트도 소개해 드리겠습니다. 해당 사이트에서는 조직도, 회로도까지 자유롭게 구현할 수 있어서 필요한 목적에 맞게 활용할 수 있습니다. 한번 직접 순서도를 그려보시길 바랍니다 🙂

☞ Diagrams.net 바로 가기

diagram.net

지금까지 알고리즘 순서도 사이트, 알고리즘 뜻을 알아봤습니다.

순서도는 프로세스를 한눈에 보여주는 다이어그램의 한 종류입니다. 작업의 흐름을 쉽게 나타내고 이해하기 위해 화살표 연결로 나타낸 것이죠. 알고리즘을 짤 때는 항상 다이어그램을 이용하여 그려보시길 추천드립니다.

감사합니다 🙂




참고하면 좋은 글



error: Content is protected !!