CWN(CHANGE WITH NEWS) - 알고리즘과 프로그램, 같은 뜻 아니다?

  • 맑음백령도21.4℃
  • 구름많음제주25.0℃
  • 맑음김해시21.7℃
  • 구름많음경주시22.0℃
  • 맑음충주16.8℃
  • 맑음양산시24.2℃
  • 맑음거제21.8℃
  • 구름많음남원20.4℃
  • 구름많음울산22.8℃
  • 맑음태백13.1℃
  • 구름조금고창군19.3℃
  • 맑음추풍령17.1℃
  • 구름조금순창군18.6℃
  • 맑음대관령7.4℃
  • 맑음합천19.2℃
  • 맑음구미19.3℃
  • 구름많음목포22.3℃
  • 구름많음순천18.6℃
  • 맑음부산23.6℃
  • 구름많음해남20.6℃
  • 맑음북부산24.0℃
  • 구름조금완도21.2℃
  • 맑음인천21.0℃
  • 맑음파주16.8℃
  • 맑음봉화11.8℃
  • 맑음영월15.7℃
  • 구름조금함양군18.6℃
  • 맑음군산21.2℃
  • 맑음서산19.5℃
  • 맑음천안16.9℃
  • 구름조금정읍19.4℃
  • 맑음수원19.3℃
  • 맑음춘천16.3℃
  • 맑음남해21.2℃
  • 맑음서청주17.6℃
  • 맑음상주18.6℃
  • 맑음금산17.8℃
  • 맑음홍천12.9℃
  • 구름조금보성군20.5℃
  • 맑음양평16.0℃
  • 구름조금진주18.7℃
  • 맑음안동17.7℃
  • 맑음고흥21.4℃
  • 맑음보령20.4℃
  • 맑음영주15.2℃
  • 구름조금임실17.0℃
  • 맑음여수22.4℃
  • 맑음밀양21.1℃
  • 구름조금장흥20.0℃
  • 맑음성산25.2℃
  • 맑음정선군12.7℃
  • 맑음철원16.0℃
  • 맑음강화19.5℃
  • 맑음속초21.1℃
  • 구름많음포항23.2℃
  • 맑음동두천16.7℃
  • 맑음문경17.2℃
  • 구름조금광주21.3℃
  • 맑음거창17.9℃
  • 맑음부안19.7℃
  • 구름조금고산24.4℃
  • 맑음북강릉20.9℃
  • 맑음제천14.1℃
  • 맑음창원22.0℃
  • 맑음부여19.5℃
  • 구름조금의령군17.5℃
  • 구름많음흑산도23.2℃
  • 구름조금광양시22.4℃
  • 구름조금장수16.3℃
  • 맑음청송군16.0℃
  • 구름많음진도군21.8℃
  • 맑음동해18.9℃
  • 맑음세종19.1℃
  • 맑음북춘천15.3℃
  • 구름조금서귀포25.8℃
  • 맑음의성16.5℃
  • 구름조금통영21.7℃
  • 맑음원주14.9℃
  • 맑음울진20.7℃
  • 구름많음고창19.3℃
  • 구름많음울릉도23.6℃
  • 맑음인제12.4℃
  • 맑음서울20.1℃
  • 구름조금홍성17.8℃
  • 맑음대전20.0℃
  • 맑음영천17.8℃
  • 맑음청주19.7℃
  • 맑음대구19.5℃
  • 맑음영덕20.4℃
  • 맑음전주20.5℃
  • 맑음북창원22.6℃
  • 맑음영광군20.1℃
  • 맑음이천15.2℃
  • 구름조금산청18.9℃
  • 구름많음강진군20.6℃
  • 맑음보은16.9℃
  • 맑음강릉19.6℃
  • 2025.09.11 (목)

알고리즘과 프로그램, 같은 뜻 아니다?

김영휘 / 기사승인 : 2021-03-28 23:28:09
  • -
  • +
  • 인쇄

알고리즘의 사전적인 의미는 문제 해결 방법이다. 이를 컴퓨터 시스템에 적용하자면 대략 '컴퓨터를 이용한 문제 해결 방법'이라고 말할 수 있다. 하지만, 이렇게 포괄적인 의미로 전공 분야의 개념을 사용하면 혼란스러울 수 있다. 따라서 알고리즘의 의미를 엄격하게 명시하자면, '특정 문제를 풀기 위한 단계적인 절차', '문제 해결 방법을 추상화하여 단계적 절차를 논리적으로 기술해 놓은 명세서'라고 할 수 있다.

알고리즘은 특정한 일을 수행하는 명령의 유한 순서 집합으로서 여러 특성을 만족시켜야 한다. 첫 번째로 0개 이상의 입력(input)을 가질 수 있어야 한다. 알고리즘 수행에 필요한 자료가 외부에서 입력되면서 제공되어야 한다.

두 번째로 반드시 한 개 이상의 출력(output)을 생성해야 한다. 알고리즘 수행 후, 하나 이상의 결과를 출력해야 한다. 세 번째로 각 명령은 그 의미가 명확해야 한다. 수행할 작업의 내용과 순서를 나타내는 알고리즘의 명령어들은 명확하게 명시돼야 한다.

네 번째로 유한한 횟수의 명령을 수행하고 나면 반드시 종료되어야 한다. 마지막으로 각 명령은 효과적이어야 한다. 알고리즘의 모든 명령어는 기본적이며, 실행이 가능해야 한다.

많은 사람이 잘못 이해하는 것과 달리 알고리즘과 프로그램은 다른 개념이다. 일상에서 두 개념을 혼용하여 사용하기도 하지만, 알고리즘은 특정 문제의 해결 방법 자체를 나타낸 것이다. 그리고, 그 알고리즘을 구현한 것을 프로그램이라고 한다.

한편, 미국의 철학자이자 과학자인 대니얼 데닛은 자신의 저서 『직관 펌프, 생각을 열다』를 통해 알고리즘의 세 가지 핵심 특징에 대해서 이야기 했다.

첫 번째로 알고리즘은 그 절차적 논리에 의해 결과를 도출하며, 재료가 갖는 인과적 힘은 알고리즘의 작동에 어떤 영향을 갖지 않는다는 재료 중립성(substrate neutrality)을 이야기했다.

두 번째로는 알고리즘 절차의 세분화된 일련의 단계는 별다른 의미 해석이 요구되지 않을 만큼 지극히 단순하다고 말하는 마음 없는 토대(underlying mindlessness)를 언급했다.

마지막으로 알고리즘이 각 단계에서 실수나 오류없이 진행된다면, 최종단계에서는 반드시 성공적인 결과를 산출한다는 결과보장(guaranteed result)에 대해서도 이야기 하였다.

[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]

최신기사

뉴스댓글 >

- 띄어 쓰기를 포함하여 250자 이내로 써주세요.
- 건전한 토론문화를 위해, 타인에게 불쾌감을 주는 욕설/비방/허위/명예훼손/도배 등의 댓글은 표시가 제한됩니다.

댓글 0

Today

Hot Issue