최근 수정 시각 : 2024-08-25 23:05:59

순서도

''' 이론 컴퓨터 과학
{{{#!wiki style="display: inline-block; font-family:Times New Roman, serif;font-style:italic"'''
{{{#!wiki style="margin: 0 -10px -5px; min-height: calc(1.5em + 5px)"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin: -5px -1px -11px"
<colbgcolor=#a36> 이론
기본 대상 수학기초론{ 수리논리학( 논리 연산) · 계산 가능성 이론 · 범주론 · 집합론} · 이산수학( 그래프 이론) · 수치해석학 · 확률론 통계학 · 선형대수학
다루는 대상과 주요 토픽
계산 가능성 이론 재귀함수 · 튜링 머신 · 람다대수 · 처치-튜링 명제 · 바쁜 비버
오토마타 이론 FSM · 푸시다운 · 튜링 머신( 폰노이만 구조) · 정규 표현식 · 콘웨이의 생명 게임 · 형식언어
계산 복잡도 이론 점근 표기법 · 튜링 기계^ 고전, 양자, 비결정론적, 병렬 임의접근 기계^ · 알고리즘 · 자료구조 · 알고리즘 패러다임( 그리디 알고리즘, 동적 계획법)
정보이론 데이터 압축( 무손실 압축 포맷 · 손실 압축 포맷) · 채널 코딩(채널 용량) · 알고리즘 정보 이론(AIT) · 양자정보과학
프로그래밍 언어이론 프로그래밍 언어( 함수형 언어 · 객체 지향 프로그래밍 · 증명보조기) · 메타 프로그래밍 · 유형 이론 · 프로그래밍 언어 의미론 · 파싱 · 컴파일러 이론
주요 알고리즘 및 자료구조
기초 정렬 알고리즘 · 순서도 · 탐색 알고리즘
추상적 자료형 및 구현 배열^ 벡터^ · 리스트^ 연결 리스트^ · 셋(set)^ 레드-블랙 트리, B-트리^ · 우선순위 큐^, 피보나치 힙^
수학적 최적화 조합 최적화 외판원 순회 문제 · 담금질 기법 · 유전 알고리즘 · 기계학습
볼록 최적화 내부점 방법 · 경사하강법
선형계획법 심플렉스법
계산 수론 및 암호학 밀러-라빈 소수판별법 · Pollard-rho 알고리즘 · 쇼어 알고리즘 · LLL 알고리즘 · 해시( MD5 · 암호화폐 · 사전 공격( 레인보우 테이블) · SHA) · 양자 암호
대칭키 암호화 방식 블록 암호 알고리즘( AES · ARIA · LEA · Camellia) · 스트림 암호 알고리즘(RC4)
공개키 암호화 방식 공개키 암호 알고리즘( 타원 곡선 암호 · RSA) · 신원 기반 암호 알고리즘(SM9)
계산기하학 볼록 껍질 · 들로네 삼각분할 및 보로노이 도형^Fortune의 line-sweeping 알고리즘^ · 범위 탐색^vp-tree, R-tree^ · k-NN
그래프 이론 탐색^ BFS, DFS, 다익스트라 알고리즘, A* 알고리즘^ · 에드몬드-카프 · 크루스칼 알고리즘 · 위상 정렬 · 네트워크 이론
정리
정지 문제 대각선 논법 · 암달의 법칙 · P-NP 문제미해결 · 콜라츠 추측미해결
틀:이산수학 · 틀:수학기초론 · 틀:컴퓨터공학 }}}}}}}}}


1. 개요2. 기호3. 예시4. 관련 프로그램5. 관련 문서

1. 개요

파일:순서도.png
1~100까지 짝수의 합이 변수 S에 저장되는 프로그램의 순서도 예시
/ flowchart

어떤 일을 처리하는 과정을 간단한 기호와 화살표로 도식화한 그림. 주로 컴퓨터 프로그래밍에서 프로그램이 돌아가는 과정을 그림으로 나타낼 때 사용되는 일종의 블록선도이다. 이 순서도를 그리는 데 특화된 자(尺)를 템플릿, 또는 컴퓨터 도형자라고 부른다.

2. 기호

종류는 다음과 같다. MS 오피스에서도 삽입 > 도형 > 순서도를 들어가면 각 기호와 대략적인 설명이 나온다.
  • 흐름선: 화살표 방향으로 데이터의 흐름을 표시하는 선.
  • 터미널: 소시지 모양. 순서도의 시작과 끝을 표시.
  • 처리: 직사각형. 각종 연산이나 데이터 이동 등의 처리를 표시.
  • 입출력: 옆으로 기울어진 평행사변형. 터미널에 의한 입출력 표시.
  • 콘솔 입력: 왼쪽이 낮고 오른쪽이 높은 사다리꼴[1]. 사용자가 키 조작 등으로 입력하는 것을 표시.
  • 카드 입력: 왼쪽 위 귀퉁이가 살짝 잘려나간 직사각형. 천공 카드를 매체로 하는 입출력을 표시한다. 현재는 천공 카드가 거의 사장된 저장매체라 실무에서 이 기호를 보긴 어렵다.
  • 화면 출력: 길쭉한 대포알 모양. 처리 결과를 화면에 출력한다.
  • 프린터 출력: 직사각형 아랫변이 물결로 바뀐 모양. 프린터로 출력한다.
  • 준비: 옆으로 길쭉한 육각형. 초기 변수 설정 등을 표시.
  • 판단: 옆으로 길쭉한 마름모. 조건에 따른 분기 등을 표시.
  • 연결자: 동그라미. 같은 페이지 안에서 흐름이 다른 곳과 연결되는 입출구를 표시.
  • 페이지 연결자: 곧은 역오각형[2]. 다른 페이지에 흐름이 계속될 때 표시.
  • 반복: 가로 왈(曰)자 모양. 윗칸에는 반복 조건을 적어놓고 아래칸에 반복 작업을 위의 기호들로 나열한다.

현대에는 순서도의 도형 중 사각형(처리), 마름모(조건분기), 동그라미(처리 시작/끝) 정도만 사용한다. 예외로 드럼통 기호(자기디스크)를 데이터베이스 처리 기호로 전용해서 쓰기도 하고 천공 카드 기호를 외부 리소스 파일을 나타내는 기호로 쓰기도 한다. 기호의 원래 의미대로 쓰는 게 아니므로 해석할 때 주의가 필요하다. 현대적인 프로그래밍 환경에 맞춰 엄격한 기호 체계를 사용하고 싶다면 UML이 있으니 그걸 사용하는 게 좋다. 그 외에 원래 순서도에는 정의되어 있지 않은 구름 모양 기호가 등장하기도 하는데, 클라우드 컴퓨팅 환경임을 의미한다.

3. 예시

파일:lamp.png
쉬운 예시.

파일:AMD CPU Logic Humor Correction.jpg
오버클럭 문서에 나오는 AMD K10 마이크로아키텍처 CPU들의 컷칩 과정.

파일:external/imgs.xkcd.com/flowcharts.png
xkcd 1488화. 단 이 만화는 시작은 순서도이지만 뒤로 가면서 다이어그램이 회로도로 바뀐다.

파일:850679.jpg
무분별한 지름신을 방지하기 위한 자가진단을 순서도로 표현한 것이다.

4. 관련 프로그램

5. 관련 문서



[1] 기요틴 칼날을 거꾸로 세워놓은 모양이라고 생각하면 쉽다. [2] 야구의 홈 베이스 모양과 같다.

분류