컴퓨팅 사고와 코딩 원리/스크래치로 배우는 컴퓨팅 사고/4단원 정리
- 최초 등록일
- 2021.07.12
- 최종 저작일
- 2021.04
- 8페이지/ 한컴오피스
- 가격 2,000원
목차
1. 알고리즘의 이해
2. 알고리즘의 설계 및 분석
3. 알고리즘을 이용한 문제 해결
4. 프로그래밍 언어
본문내용
알고리즘의 개념
*알고리즘(algorithm): 주어진 문제를 어떻게 해결할 것인지에 대해 그 방법과 절차를 기술한 것이다.
알고리즘의 표현 방법
-순서도
*순서도(flow chart): 약속된 기호와 선을 사용하여 문제를 해결 과정을 표현하는 방법이다. 순서도를 사용하면 자연어로 파악하기 어려운 전체 구조의 흐름을 한 번에 파악할 수 있다.
-의사코드
*의사코드(pseudo code): 특정 프로그래밍에 사용되는 언어와 유사한 서술로 알고리즘을 표현한 것으로, 프로그래밍 언어를 흉내낸 것이다.
[그림 4-5]의사 코드 사용 예시
START
X=3, Y=5
Z=X
X=Y
Y=Z
PRINT X,Y
END
-프로그래밍 언어
*프로그래밍 언어(programming language): 컴퓨터에게 작업을 지시하기 위해 사용하는 언어이다. 의사코드를 작성하면 특정한 프로그래밍 언어로 쉽게 변환할 수 있다.
알고리즘의 조건★
*입력: 알고리즘에 입력되는 자료가 0개 이상 존재한다.
*출력: 알고리즘이 실행되면 결과 값이 1개 이상 나온다.
*유한성: 알고리즘은 종료되어야 한다.
*명확성: 알고리즘의 명령이 모호하지 않고 명확해야 한다.
*수행 가능성: 알고리즘의 명령은 수행 가능해야 한다.
알고리즘과 프로그래밍의 관계
*알고리즘이 레시피라면 프로그래밍은 레시피에 적힌 대로 조리하는 과정과 같고, 완성된 요리는 프로그램과 같다.
알고리즘의 설계
*알고리즘의 설계란 문제를 해결하기 위해 가장 효율적인 방법을 찾아내는 과정을 말한다.
*알고리즘을 설계할 때에는 문제의 현재 상태와 목표 상태를 명확히 정의해야 한다.
*알고리즘을 설계할 때 알고리즘의 명령이 실행되는 순서를 결정하는 제어 구조로 순차 구조, 선택 구조, 반복 구조가 있다.
*[그림 4-8] (a)와 같이 다람쥐가 밀폐된 공간에서 도토리를 줍는 과정을 순차 구조, 선택 구조, 반복 구조를 이용하여 순서도로 설계하면 [그림 4-8] (b)와 같다.
참고 자료
스크래치로 배우는 컴퓨팅 사고ㅣ조성호, 고광일 지음ㅣ한빛 아카데미