알고리즘
컴퓨팅 사고에서 사용하는 해결방안
- 컴퓨터의 능력을 가정하고 일련의 절차를 이용하여 문제를 해결하는 방법
알고리즘의 사용을 위해서 '순서도'라는 것을 배우고 사용한다.
순서도
순서도의 기본적인 종류
- 순차구조(Sequence): 순서에 따라 차례대로 작업 수행
- 조건구조(Condition): 조건에 따라 순서도의 경로가 달라지는 순서도
- 반복구조(Iteration): 일련의 작업들을 여러 번 반복해야 하는 경우를 위한 구조

그림출처-위키백과
순서도에는 기본적인 기호가 있다.
기호 1
!
위의 마름모꼴로 생긴 모양은 조건을 사용할 때 그리게 되는 기호이다. 참 혹은 거짓, 예 혹은 아니오 등이 필요할 때에 사용한다.
이 기호를 사용하여 알고리즘을 작성한다면 '조건 구조'가 형성된다.
기호 2
!
결과를 나타내는 기호이다.
기호 3
!
순서도의 진행을 알리는 화살표이다.
이 기호를 사용하여 같은 방향으로만 알고리즘을 완성시킨다면, 알고리즘의 기본구조 세가지 중 '순차구조'가 된다.
반복구조
!
그림 출처- 원광대학교 강의공개
반복구조는 이렇게 기호를 적절하게 사용하여 반복되게 만든다면 반복구조가 된다.
프로그래밍
프로그램?
알고리즘을 컴퓨터에게 이해시키기 위해 가공한 형태
- 프로그램을 만들기 위해서 컴퓨터와 소통할 수 있는 언어가 프로그래밍 언어
- 프로그래밍 언어를 사용하여 프로그램을 만드는 것이 프로그래밍이다
프로그래밍 과정
- 문제 정의
- 알고리즘 구상
- 프로그램
과정만 보아도 프로그래밍이란 문제 해결을 위하여 있음을 알 수 있다.
프로그래밍 언어
기계어
- 컴퓨터가 이해하는 언어
- 0 또는 1
흔히 알고 있는 컴퓨터는 0과 1로 이루어져 있다라는 말은 진실이다!
고급언어
- 사람이 이해할 수 있는 언어
- 일반적인 프로그래밍 언어는 고급언어를 가르킴
- 예) 파이썬, C, C++
번역기
번역기의 역할: 컴퓨터가 이해하도록 고급언어를 기계어로 변환(통역)
번역기의 종류는 두가지가 있다.
컴파일러
- 번역속도 느림, 프로그램 구동속도 빠름
- C, C++
인터프린터