提供: 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]を止める

このスクリプトを簡略化すると、

前もって準備{
[答え一覧 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]を止める

となる。どちらも同じ動作をするが、下のほうが効率的である。

ステージモニターはどのように使用できるのか?

リストのもう1つの目的に、何かを画面上に表示するというものがある。そのとき、ステージモニターを利用すると、表示がかんたんに実現できる。具体的には、

  • 持ち物の表示
  • 目的の表示
  • クイズのログ

リストブロックの横のチェックボックスを入れると、リストが表示される。また、ブロックでは、

リスト[ v]を表示する
などで制御できる。