Skip to content

활동

시 생성기

중급 | MakeCode, Python | LED, 가속도 센서 | 난수, 문법,

1단계: 만들어 보세요.

프로젝트 소개

시 생성기 프로젝트는 시에서 사용할 수 있는 무작위 문구를 만들어내거나, 비밀번호로 사용하거나, 스토리를 시작하는 데 사용할 수 있습니다. 특히 시적이거나 재밌는 문구를 친구들과 공유하는 것도 좋습니다.  

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

무엇을 배우게 되나요?

배열에 대해 배우게 될 것입니다. 배열은 특별한 종류의 변수입니다. 배열은 목록에 데이터를 저장하는 유용한 방법입니다.

설명

  • BBC micro:bit 를 흔들면 형용사, 명사, 동사, 부사로 구성된 무작위 구문이 생성됩니다. 예를 들어, '아름다운 새가 재빨리 먹는다'와 같습니다.
  • 여러분이 만든 문구를 사용해 시를 시작할 수도 있고, 이 프로그램에서 생성된 다른 문구와 함께 시 전체를 쓸 수도 있습니다.
  • 이 프로그램은 '형용사', '명사', '동사', '부사'라는 네 개의 배열을 사용합니다.
  • 각 배열은 단어 목록을 저장합니다. 배열의 각 항목을 요소라고 합니다. 요소에는 색인이 지정됩니다. 예를 들어, 배열 '명사'에는 세 개의 요소가 포함되어 있습니다. 요소 0 은 새, 요소 1 은 나비, 요소 2 는 잠자리입니다. 컴퓨터가 0 부터 세기 시작하기 때문에 인덱스는 0 부터 번호가 매겨집니다.
  • micro:bit 를 흔들면 각 배열에 대해 0 과 2 사이의 무작위 숫자가 선택됩니다. 해당 인덱스의 요소는 micro:bit 의 LED 디스플레이에 표시됩니다.

준비물

  • micro:bit (또는 MakeCode 시뮬레이터)
  • MakeCode 편집기
  • AAA 배터리 팩 (옵션)

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

1# Imports go at the top
2from microbit import *
3import random
4
5adjectives = ['beautiful', 
6           'delicate',
7           'bright']
8
9nouns = ['bird', 
10           'butterfly',
11           'dragonfly']
12
13verbs = ['eats', 
14           'flies',
15           'flutters']
16
17adverbs = ['swiftly', 
18           'silently',
19           'skillfully']
20
21while True:
22    if accelerometer.was_gesture('shake'):
23        choice = random.randint(0, len(adjectives)-1)
24        display.scroll(adjectives[choice])        
25        choice = random.randint(0, len(nouns)-1)
26        display.scroll(nouns[choice])
27        choice = random.randint(0, len(verbs)-1)
28        display.scroll(verbs[choice])
29        choice = random.randint(0, len(adverbs)-1)
30        display.scroll(adverbs[choice]) 

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

  • 프로그램에 더 많은 형용사, 명사, 동사, 부사를 추가합니다.
  • 버튼 A나 버튼 B 등의 다른 입력 기능을 활용해 시의 줄을 더 늘릴 방법을 찾아보세요.
  • 하이쿠를 생성하는 프로그램을 작성할 수 있나요?