提供:Japanese Scratch-Wiki
このきじは ひらがなでよめません。ごめんなさい。編集者向け:作成する
このチュートリアルでは、リストとはどのようなものか、どのようにしてプロジェクトの中で使用するかを説明する。
リストとは?
プログラミング言語(もちろん、Scratchも含む)のリストは、あらかじめ何らかの値を何個か入れて使う。Scratch 1.3で追加され、文字列(日本語もOK)、数値、真偽の値を入れることができる。具体例は次の通り:
- Hello
- こんにちは
- スクラッチ
- 変数
- 750
- 3.14
- -10
- 0
- true
- (何もない)
リストはどうやって作成するのか?
ブロックパレットの変数カテゴリの中に、「リストを作る」というボタンがあるので、押す。すると、ボックスが開く。リスト名を入力し、「すべてのスプライト用」か「このスプライトのみ」を選び、OKを押す。すると、リストが作成できる。
リストで何ができるのか?
リストの使い方は無限にある。もっとも多いのが、値を記憶するためだ。 もう1つ、「スクリプトを簡略化する」というものもある。たとえば、
[テスト v]を受け取ったとき [富士山の高さは?]と聞いて待つ もし<<<(答え::sensing)=[3776m]>または<(答え::sensing)=[3776]>>または<(答え::sensing)=[3776]>>なら [乱数 v]を((1)から(10)までの乱数)にする もし<(乱数)=[1]>なら//これとこの下はレア [正解!やったね!]と言う でなければ もし<(乱数)=[2]>なら [正解!すごいぞ!]と言う でなければ [正解!]と言う end end でなければ [不正解...]と言う end [このスクリプト v]を止める::control cap
このスクリプトを簡略化すると、
前もって準備{ [答え一覧 v]のすべてを削除する [3776m]を[答え一覧 v]に追加する ::list [3776]を[答え一覧 v]に追加する ::list [3776]を[答え一覧 v]に追加する ::list [言葉一覧 v]のすべてを削除する (8)回繰り返す []を[言葉一覧 v]に追加する::list end [やったね!]を[言葉一覧 v]に追加する [すごいぞ!]を[言葉一覧 v]に追加する }::control [テスト v]を受け取ったとき [富士山の高さは?]と聞いて待つ もし<[答え一覧 v]に(答え)が含まれる>なら ([正解!]と((1)から([言葉一覧 v]の長さ::list)までの乱数))と言う でなければ [不正解...]と言う end [このスクリプト v]を止める::control cap
となる。どちらも同じ動作をするが、下のほうが効率的である。
ステージモニターはどのように使用できるのか?
リストのもう1つの目的に、何かを画面上に表示するというものがある。そのとき、ステージモニターを利用すると、表示がかんたんに実現できる。具体的には、
- 持ち物の表示
- 目的の表示
- クイズのログ
リストブロックの横のチェックボックスを入れると、リストが表示される。また、ブロックでは、
リスト[ v]を表示する
などで制御できる。