*boostcourse의 '모두를 위한 컴퓨터 과학 (CS50 2019)' 코스 강의를 듣고 정리한 글입니다.
모든 내용, 이미지의 출처는 boostcourse의 해당 코스에 있습니다.
1. 스크래치란?
- MIT의 미디어 랩에서 만든 그래픽 언어 (scartch.mit.edu에서 사용 가능)
- 퍼즐 조각처럼 보이는 블럭들을 끌어 놓는 방식으로 연결시켜 컴퓨터가 무엇을 할 지 단계적으로 프로그래밍 함
2. 스크래치 편집기 화면 구성
(scartch.mit.edu에서 Create를 클릭하면 나오는 화면)
1) 여러 색으로 나누어진 퍼즐 조각들
2) 거대한 흰 캔버스
- 왼쪽의 퍼즐 조각들을 끌어당기고 서로 연결하여 프로그램을 만들 수 있음
3) 초록색 깃발/정지 버튼
- 각각 프로그램 실행/중단
4) 스테이지
- 2)번의 '화면의 중간'에서 프로그램을 만들면, 그에 따라 상하좌우로 움직이거나 다른 여러 일들을 할 수 있음
- 고양이 캐릭터 외에도, 다양한 요정과 캐릭터들을 여럿 추가할 수 있음
3. 스크래치 예제
- 이름을 물어봤을 때 대답하면, 인사 후 대답한 이름을 불러주는 프로그램
- 버그가 발생함
- 실행해 보면, 'Hello!'는 출력되지 않고 대답한 이름 'David'만 출력되는 것을 알 수 있음
-> 'Hello!'가 출력되었으나, 'David'가 연달아 출력되는 바람에 미처 볼 수 없었던 것
- 'Hello!'를 2초간 출력되게 한 후, 대답한 이름이 2초간 출력되도록 프로그램을 수정함
-> 'Hello!'가 출력되고, 대답한 이름 'David'가 출력되는 것을 알 수 있음
- 여전히, 자연스럽지 않은 프로그램
- 'Hello, [대답한 이름]'이 출력되도록 프로그램을 수정함
-> 'Hello, David(=대답한 이름)"이 출력됨
4. 알고리즘과의 관계성
- 알고리즘은 입력(input)에서 받은 자료를 출력(output)형태로 만드는 처리 과정을 뜻함
: Input -> Algorithms -> Output
- 스크래치가 알고리즘에 완벽하게 적용됨
1) 보라색 퍼즐 조각만을 이용해서 캐릭터가 'hello, world'를 말하게 하기
- Input = 'hello, world', Algorithms = 보라색 'say' 블록, Output = 캐릭터가 'hello, world'를 출력함
2) 하늘색 퍼즐 조각만을 이용해서 캐릭터가 이름을 물은 후 기다리게 하기
- Input = 'What's your name?', Algorithms = 하늘색 'ask and wait' 블록, Output = 하늘색 'answer' 블록
3) 보라색, 초록색, 하늘색 퍼즐 조각으로 'Hello, [대답한 이름]'을 말하게 하기
- Input = 'hello,'/하늘색 'answer' 블록, Algorithms = 초록색 'join' 블록, Output = 캐릭터가 'hello, [대답한 이름]'를 출력함
'컴퓨터공학 공부 > SmartLearn - PABI 강의' 카테고리의 다른 글
컴퓨팅 사고 I: WEEK 4-2, 4-3 (0) | 2023.01.06 |
---|---|
컴퓨팅 사고 I: WEEK 3-3, 4-1 (0) | 2022.12.16 |
1. 컴퓨팅 사고 - 알고리즘 (0) | 2022.10.14 |
1. 컴퓨팅 사고 - 2진법, 정보의 표현 (0) | 2022.10.09 |
컴퓨팅 사고 I: WEEK 3-1, 3-2 (0) | 2022.09.29 |