Skip to content

활동

가위, 바위, 보

초급 | MakeCode, Python | LED, 가속도 센서 | 난수, 선택 실행

1단계: 만들어 보세요.

프로젝트 소개

2 개의 micro:bit 로 게임을 하면서, 조건/선택 실행, 변수, 랜덤 값에 대해 배워보세요.

다음 동영상을 통해 만들고 프로그래밍하는 방법을 살펴보세요.:

소개

프로그래밍 가이드

설명

  • 가위, 바위, 보는 두 사람이 함께 할 수 있는 간단한 게임입니다. 이기고 지는 것은 운에 따라 달라집니다. 두 사람이 주먹을 쥔 상태에서 주먹을 위 아래로 3번 흔든 후에, 가위 바위 보 중 하나를 아무렇게나 골라서 냅니다. 가위는 보를 이기고, 바위는 가위를 이기고, 보는 바위를 이깁니다.
  • micro:bit 의 가속도 센서에서 micro:bit 가 흔들린 것을 감지하면, 0, 1, 2 중 하나의 정수 값이 랜덤으로 골라져 tool 변수에 저장됩니다.
  • 컴퓨터에서는 0 부터 세는 것이 일반적이기 때문에 0, 1, 2로 순서를 매겼습니다. 0 도 엄연히 수 입니다!
  • 프로그램에서는 조건/선택 실행 구조를 이용해서 어떤 모양을 LED 화면에 출력할 지를 결정합니다. 랜덤으로 뽑아낸 값이 0 이면 바위 모양을 출력하고, 1 이면 보 모양을 출력합니다. 랜덤으로 뽑아낸 값이 0 이나 1 이 아닌, 그 외의 값이라면? 그 값은 반드시 2 일 수 밖에 없습니다. micro:bit 에서 랜덤으로 정수 값을 뽑아낼 때, 0 이상 2 이하의 정수값만 뽑아내도록 지정했기 때문입니다. 따라서, 랜덤으로 뽑아낸 값이 0 이나 1 이 아니라면 가위 모양을 출력하면 됩니다.

준비물

  • micro:bit 2대 (또는 MakeCode 시뮬레이터)
  • MakeCode 또는 Python 편집기
  • AAA 배터리 팩 (옵션)
  • 가위 바위 보 게임을 함께 할 친구

2단계: 프로그래밍 해보세요.

1from microbit import *
2import random
3
4while True:
5    if accelerometer.was_gesture('shake'):
6        tool = random.randint(0,2)
7        if tool == 0:
8            display.show(Image.SQUARE_SMALL)
9        elif tool == 1:
10            display.show(Image.SQUARE)
11        else:
12            display.show(Image.SCISSORS)

3단계: 더 좋게 만들어 보세요.

  • 가위, 바위, 보 아이콘을 직접 만들어 보세요.
  • 가위, 바위, 보 말고 다른 것을 더 추가 할 수 없는지 생각해 보세요. 다른 규칙을 만들어 볼 수도 있습니다.
  • micro:bit 의 무선 라디오 기능을 이용해서, 무선 가위 바위 보 게임을 만들어 보세요. 누가 이기고 졌는지도 각각 출력해 줄 수 있습니다.