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

  • 구름많음보성군31.3℃
  • 흐림철원23.7℃
  • 구름많음목포28.0℃
  • 흐림구미27.7℃
  • 흐림강진군30.7℃
  • 흐림임실27.3℃
  • 흐림의성26.4℃
  • 흐림대관령17.2℃
  • 흐림인제22.1℃
  • 구름많음진주29.2℃
  • 구름많음영천29.1℃
  • 구름많음부산29.1℃
  • 흐림해남28.8℃
  • 맑음백령도23.8℃
  • 흐림울진22.6℃
  • 구름많음부여27.8℃
  • 구름많음산청29.2℃
  • 구름많음광양시29.0℃
  • 흐림성산26.9℃
  • 구름많음추풍령27.6℃
  • 구름많음춘천25.3℃
  • 구름많음남해29.0℃
  • 구름많음문경29.2℃
  • 비북강릉20.1℃
  • 흐림대구30.1℃
  • 흐림청송군26.9℃
  • 구름많음양산시31.4℃
  • 비포항24.3℃
  • 흐림전주26.6℃
  • 구름많음천안25.0℃
  • 구름많음상주29.4℃
  • 구름많음부안26.2℃
  • 흐림울산29.0℃
  • 흐림정선군22.2℃
  • 흐림영광군26.8℃
  • 흐림태백18.3℃
  • 구름많음군산25.9℃
  • 구름많음보령27.1℃
  • 구름많음금산29.1℃
  • 구름많음창원30.1℃
  • 흐림정읍27.2℃
  • 구름많음합천28.5℃
  • 구름많음의령군29.8℃
  • 구름많음북창원30.0℃
  • 흐림충주25.8℃
  • 구름조금청주27.9℃
  • 구름많음경주시29.8℃
  • 흐림북춘천25.3℃
  • 흐림서울26.5℃
  • 구름많음울릉도26.2℃
  • 흐림순창군28.0℃
  • 구름많음흑산도27.8℃
  • 구름많음진도군28.6℃
  • 구름많음홍성27.1℃
  • 흐림강화25.6℃
  • 흐림안동27.8℃
  • 흐림영덕21.0℃
  • 흐림함양군30.1℃
  • 흐림홍천24.6℃
  • 흐림이천25.5℃
  • 구름많음고창군27.4℃
  • 흐림장수26.0℃
  • 흐림원주24.2℃
  • 구름많음순천27.4℃
  • 흐림속초21.0℃
  • 구름많음고창27.1℃
  • 구름많음대전29.6℃
  • 구름조금세종27.1℃
  • 흐림동해20.8℃
  • 비여수26.8℃
  • 구름많음통영29.1℃
  • 구름많음제주29.4℃
  • 구름많음고흥28.4℃
  • 흐림강릉21.1℃
  • 구름많음거제27.6℃
  • 구름많음김해시28.7℃
  • 구름많음수원25.0℃
  • 흐림인천24.6℃
  • 구름많음고산28.5℃
  • 구름많음거창29.4℃
  • 구름많음영주26.7℃
  • 흐림제천20.8℃
  • 흐림북부산30.7℃
  • 구름많음보은28.1℃
  • 구름많음완도28.7℃
  • 구름많음양평25.7℃
  • 구름많음장흥30.3℃
  • 구름많음밀양28.9℃
  • 구름많음파주25.3℃
  • 구름많음서청주26.5℃
  • 흐림봉화21.1℃
  • 흐림영월22.1℃
  • 비서귀포27.1℃
  • 구름많음서산25.5℃
  • 구름조금광주27.5℃
  • 구름많음동두천24.4℃
  • 구름많음남원27.5℃
  • 2025.09.13 (토)

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

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

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

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

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

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

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

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

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

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

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

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

최신기사

뉴스댓글 >

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

댓글 0

Today

Hot Issue