ゆすったら数字を表示するサイコロを作ろう

ゆすったら数字を表示するサイロ作り

ここにあります

まず、数字の表示です


ランダムな数字というのは、1から6までの数字を、順番をバラバラに作るという意味です。
だからサイコロをふるたびに、適当な数字をだします。
でも、何万回も何十万回もふると、どれもだんだん同じ割合になってきます。



これで、ゆすると。1から6までの数字を表示します。
ゆすってみましょう。
数字が出たら次へ進みます。

でも、ここで変数を使ってみます。

変数というグループ(と言うのかなぁ・そういっておこう)を押すと
右のような変数をつくるところが出ます。
そこで【変数を追加する】をおして・・


すると、下のようになるので
作成(さくせい)する変数(へんすう)の名前を入れる。


下のようになれば、【すうじ】という変数ができたということです。



上のようになったら、(すうじ)という変数ができたということです。
できたら次のようにします。
変数に入っている数字が表示されます。

ゆさぶると数字が出ます。
変数がでたら、ここまでは合格です。
何でわざわざ変数なんて作るのかというと、こうしないとサイコロがうまく作れないからです



次に、サイコロみたいに表示しましょう。


変数に数字がはいると、サイコロのような画面にすることができます。
もし・・・ならば というのは IF関数(いふかんすう)というしかけです。
もしもの枠(わく)をふやすには左下の【+】マークを押せばふえます・
これで1のときの模様(もよう)、2のときの模様、3のときの模様ときりかえて表示できるのです。
3より上はどんな画面のしたら良いか、工夫してみてください。
(すうじ)が6のときは、「でなければ」で書きましょう。


サイコロができれば合格(ごうかく)です。


Javaスクリプト


興味(きょうみ)のある人は、JavaScriptをおして英語を調べてみてください
意味を考えましょう。
なお、A==B というのは、AtoBが等しいという意味です。
数字==1 というのは、数字という変数が1と等しい(おなじ)と言う意味です。

let すうじ = 0
input.onGesture(Gesture.Shakefunction () {
    すうじ = randint(16)
    if (すうじ == 1) {
        basic.showLeds(`
            . . . . .
            . # # # .
            . # # # .
            . # # # .
            . . . . .
            `)
    } else if (すうじ == 2) {
        basic.showLeds(`
            # # . . .
            # # . . .
            . . . . .
            . . . # #
            . . . # #
            `)
    } else if (すうじ == 3) {
        basic.showLeds(`
            # # . . .
            # # . . .
            . . # . .
            . . . # #
            . . . # #
            `)
    } else if (すうじ == 4) {
        
    } else if (すうじ == 5) {
        
    } else {
        
    }
})

パイソン

パイソンも見てみましょう。
Javaスクリプトもパイソンも、変数に日本語が使えるのですね。
自裁は進んでいる。
でも、英語やローマ字の方が安心なのはどうして・・・年のせい?
関数名,変数名などは、小文字とアンダーバーだけが良いなぁとおもうけど・・・


すうじ = 0
def on_gesture_shake():
    global すうじ
    すうじ = randint(16)
    if すうじ == 1:
        basic.show_leds("""
            . . . . .
            . # # # .
            . # # # .
            . # # # .
            . . . . .
            """)
    elif すうじ == 2:
        basic.show_leds("""
            # # . . .
            # # . . .
            . . . . .
            . . . # #
            . . . # #
            """)
    elif すうじ == 3:
        basic.show_leds("""
            # # . . .
            # # . . .
            . . # . .
            . . . # #
            . . . # #
            """)
    elif すうじ == 4:
        pass
    elif すうじ == 5:
        pass
    else:
        pass
input.on_gesture(Gesture.SHAKE, on_gesture_shake)
ヒントへ進む

ちょっと危ないプログラム

なぜあぶないかというと、ちゃんと押さえていないと、マイクロビットが飛んで言ってしまうからです
もっとこまるのは、電池の線とマイクロビットがつながっている線が切れてしまうからです。
これはとっても切れやすい

しっかりおさえて使うこと、ふくろに入れておけば良いかもしれません。
ということで次のプログラム

なにをやっているかというと、ゆするとその力によって音が鳴るのです。