[컴퓨팅 사고]#4.스크래치

해피데빙·2022년 6월 25일
0

CS50

목록 보기
6/17

스크래치

알고리즘을 구성하는 요소로는 함수, 조건, 불리언 표현, 루프 등이 있습니다. 스크래치라는 그래픽 프로그래밍 언어를 사용하면 블록을 옮겨 붙여서 알고리즘을 만들어 볼 수 있습니다.

화면 왼쪽에는 함수나 변수 등을 나타내는 퍼즐 조각들이 있습니다. 이 블록들은 화면 중간으로 옮길 수 있습니다. 화면 오른쪽에는 알고리즘 결과나 보여지는 무대가 있습니다. 이 캐릭터의 요정이 “hello, world’ 라고 말 하거나 “이름이 뭐니?”라고 묻고, “David”이라고 답할 수 있도록 할 수 있습니다.

스크래치 블록

블록의 종류에 따라서 프로그램이 수행하는 일의 종류가 달라집니다. 입력이 주어졌을 때 블랙 박스를 거쳐 출력이 되는 컴퓨터의 작동 원리를 생각해보면, 하나의 블록이 블랙 박스의 역할을 하는 것입니다. 가령 “말해라” 라는 블록에 “hello, world”라는 입력을 주게되면 그 결과로 고양이가 “hello, world”라고 말하게 되는 것이죠. 이러한 입력과 출력을 이어 붙여서 여러 작업을 순차적으로 수행할 수도 있습니다.

변수와 루프

변수를 사용하면 정보를 저장하고 다시 재사용할 수 있습니다. ‘counter’라는 변수를 사용하여 양이 숫자를 셀 수 있도록 해 봅시다.

초록색 깃발이 클릭되었을 때, counter 변수를 1로 설정합니다. 그리고 영원히 루프를 돌면서 counter 변수에 저장된 값을 1초동안 말하도록 합니다. 그 후 1초를 기다리고, counter의 값을 1 증가시킵니다.

변수와 조건문

조건문을 활용하면 더 복잡한 프로그램도 가능합니다. 여기서는 ‘참’ 또는 ‘거짓’ 값을 가지는 불리언 변수를 사용합니다. 초록색 깃발이 클릭되면, muted 변수를 ‘거짓’으로 설정합니다. 그리고 루프를 돌면서, 감지 블록을 통해 스페이스 키가 눌렸는지 체크합니다. 그렇다면, muted가 ‘참’인지 확인합니다. 만약 그렇다면, muted를 거짓으로 설정합니다. 만약 muted가 ‘참’이 아니라면, muted를 ‘참’으로 설정합니다. 그리고 1초를 기다립니다.

profile
노션 : https://garrulous-gander-3f2.notion.site/c488d337791c4c4cb6d93cb9fcc26f17

0개의 댓글