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

  • 맑음이천5.1℃
  • 구름많음의령군2.6℃
  • 맑음춘천5.6℃
  • 구름조금남원7.6℃
  • 맑음철원1.9℃
  • 맑음제천4.8℃
  • 맑음대전5.7℃
  • 구름많음남해9.8℃
  • 맑음정읍7.1℃
  • 구름조금순창군8.6℃
  • 맑음군산5.5℃
  • 구름조금울산10.5℃
  • 맑음수원3.4℃
  • 맑음보은4.8℃
  • 맑음동해12.2℃
  • 맑음구미6.0℃
  • 구름많음서귀포12.9℃
  • 구름많음창원10.1℃
  • 맑음원주5.7℃
  • 구름많음울릉도13.7℃
  • 맑음영덕12.1℃
  • 맑음영월7.5℃
  • 맑음인천3.6℃
  • 맑음천안3.6℃
  • 구름많음합천4.4℃
  • 맑음함양군10.5℃
  • 구름조금순천9.3℃
  • 맑음임실8.1℃
  • 구름많음고흥11.1℃
  • 맑음울진12.1℃
  • 구름많음김해시9.9℃
  • 구름많음통영11.2℃
  • 맑음대관령3.2℃
  • 맑음상주8.5℃
  • 맑음영광군8.1℃
  • 맑음문경7.9℃
  • 맑음북강릉10.0℃
  • 맑음홍성5.0℃
  • 맑음동두천2.5℃
  • 맑음속초9.9℃
  • 구름조금백령도5.0℃
  • 구름많음장흥10.4℃
  • 맑음영천5.6℃
  • 구름조금목포9.5℃
  • 연무여수12.5℃
  • 구름조금부산13.0℃
  • 맑음장수7.3℃
  • 맑음의성0.8℃
  • 구름많음보성군10.7℃
  • 맑음경주시11.1℃
  • 구름조금흑산도9.8℃
  • 구름많음북창원10.4℃
  • 구름조금해남9.5℃
  • 맑음청주6.7℃
  • 맑음부여3.0℃
  • 맑음서산2.8℃
  • 맑음서청주3.7℃
  • 맑음금산7.6℃
  • 박무안동4.7℃
  • 구름조금강진군10.3℃
  • 구름조금완도10.8℃
  • 맑음정선군7.7℃
  • 맑음태백5.8℃
  • 구름많음밀양3.8℃
  • 맑음영주8.3℃
  • 맑음강릉11.6℃
  • 박무광주9.6℃
  • 맑음충주5.4℃
  • 연무제주14.7℃
  • 구름많음성산13.1℃
  • 맑음홍천3.8℃
  • 맑음인제6.4℃
  • 맑음고창군7.5℃
  • 구름조금진도군10.2℃
  • 구름많음고산14.6℃
  • 구름많음거제10.7℃
  • 맑음양평5.9℃
  • 맑음서울4.2℃
  • 맑음북춘천1.6℃
  • 맑음봉화2.9℃
  • 맑음포항13.0℃
  • 맑음보령3.4℃
  • 맑음청송군9.5℃
  • 구름많음진주3.5℃
  • 맑음대구6.0℃
  • 맑음추풍령7.3℃
  • 구름조금광양시11.1℃
  • 맑음거창8.4℃
  • 구름조금산청11.0℃
  • 구름많음양산시9.9℃
  • 맑음강화2.5℃
  • 맑음파주0.1℃
  • 맑음고창7.2℃
  • 맑음부안7.2℃
  • 박무전주7.6℃
  • 구름많음북부산6.7℃
  • 맑음세종5.6℃
  • 2025.12.01 (월)

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

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

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

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

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

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

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

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

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

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

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

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

최신기사

뉴스댓글 >

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

댓글 0

Today

Hot Issue