*POSTECH 청년 AI · Big Data 아카데미(https://pabi.smartlearn.io/)의
'Computational Thinking (컴퓨팅 사고) Ⅰ' 코스 강의를 듣고 정리한 글입니다
*모든 이미지의 출처는 https://pabi.smartlearn.io/ 입니다
1. 컴퓨팅
1) 컴퓨팅 - 컴퓨터가 수행 주체인 계산
2) 프로그래밍 언어와 프로그램
- 프로그래밍 언어로 프로그램을 작성하는 작업 = 프로그래밍
- 프로그램의 오류를 찾아서 고치는 작업 = 디버깅 (벌레를 잡는다는 의미)
- 경우에 따라 프로그램과 프로그래밍을 각각 코드/코딩이라고 부르기도 함.
(1) 프로그래밍 언어(=계산 언어): C, Python, Haskell, Scala ...
- 문법: 어휘를 명시, 단어 배치 규정을 정의
- 의미론: 단어 조합이 연산인지 명령인지 판단, 실행 결과를 설명
- 사람도 결과를 예측할 수 있음
-다양한 프로그래밍 언어 (예: 정수 1부터 100까지 더해서 화면에 출력하는 계산)
- 프로그래밍 = 글짓기 -> 프로그래밍으로 문제를 해결한다 = 사람 언어로도 설명할 수 있다
(2) 프로그램(=코드, 계산 과정) : C 프로그램, Python 프로그램, Haskell 프로그램, Scala 프로그램
프로그램 실행 결과
1) 실행이 성공적으로 끝난다
2) 실행이 비정상적으로 끝난다 (예: 0으로 나누는 연산)
3) 실행이 끝나지 않는다
2. 컴퓨팅 사고
1) 계산 주체로서 컴퓨터의 장점
(1) 계산 대상이 크다- 1GB(기가바이트) 메모리
= 알파벳 1024의 3승 = 1,073,741,824 글자 기억
(2) 계산 수행 속도가 빠르다-1GHz(기가헤르츠)
= 초당 1024의 3승 = 1,073,741,824번 이상 수행
(3) 계산 과정을 반복할 수 있다
- 똑같은 과정을 반복해서 큰 분량의 계산 대상 빠르게 처리
2) 컴퓨팅 사고 (Computational Thinking)
- 컴퓨팅으로 문제를 풀고자 할 때 적합한 생각의 틀 - 기계적 수행 고려, 체계적 계산 설계
- 프로그래밍보다 우선하는 개념
(1) 계산 대상 바라보기 (=알맹이 요약하기)
(2) 계산 자료 바라보기 - 다음 유도하기
- 작은 것으로부터 더 큰 것을 간단하게 이끌어 내기
- 이유: 계산 자료는 대부분 일정한 규칙에 따라 생성되기 때문
- 조건: 작은 것의 꼴 = 큰 것의 꼴
- 문제풀이 예시: 생년월일이 가장 빠른 학생 찾기
'컴퓨터공학 공부 > SmartLearn - PABI 강의' 카테고리의 다른 글
1. 컴퓨팅 사고 - 알고리즘 (0) | 2022.10.14 |
---|---|
1. 컴퓨팅 사고 - 2진법, 정보의 표현 (0) | 2022.10.09 |
컴퓨팅 사고 I: WEEK 3-1, 3-2 (0) | 2022.09.29 |
컴퓨팅 사고 I: WEEK 1-3, 1-4 (0) | 2022.09.16 |
컴퓨팅 사고 I: WEEK 1-1, 1-2 (0) | 2022.09.08 |