提供: Japanese Scratch-Wiki
このきじは ひらがなでよめません。ごめんなさい。編集者向け:作成する
データの範囲は、データのうちもっとも大きなもの(最大値)からもっとも小さなもの(最小値)を引いた値である。
このチュートリアルでは、Scratchでデータの範囲を算出する方法を説明する。
スクリプトの例
データの範囲を求めるスクリプトには、例えば以下のようなものがある。
方法1
この方法では、次の変数とリストを使用する (調べる数値データは0以上の数とする):
- 変数
- 「最大値 #」 — もっとも大きな数値データの値を保持する
- 「最小値 #」 — もっとも小さな数値データの値を保持する
- 「カウンター」 — 回数を数える
- 「データ範囲」 — 結果(データの範囲)を保持する
- リスト
- 「調べるデータ群」 — 調べる対象の数値データ群
手順1
まず、リスト内の最大値を調べる。これは、次のスクリプトでシンプルに実現できる。
[カウンター v] を [0] にする [最大値 # v] を [0] にする ([調べるデータ群 v] の長さ::list) 回繰り返す [カウンター v] を (1) ずつ変える もし <([調べるデータ群 v] の (カウンター) 番目) > (最大値 #)> なら [最大値 # v] を ([調べるデータ群 v] の (カウンター) 番目) にする end end
手順2
次に、リスト内の最小値を調べる。これには、先ほどのリストをちょっと変えて、「>」ブロックを「<」 にしてから、さらに保存する変数を変更すればよい。最小値の初期値には、先ほど調べた最大値を入れておく。
[カウンター v] を [0] にする [最小値 # v] を (最大値 #) にする ([調べるデータ群 v] の長さ::list) 回繰り返す [カウンター v] を (1) ずつ変える もし <([調べるデータ群 v] の (カウンター) 番目) < (最小値 #)> なら [最小値 # v] を ([調べるデータ群 v] の (カウンター) 番目) にする end end
手順3
最後に、最大値から最小値を引けば、データの分布範囲がわかるので、これを変数「範囲」に入れる。
[データ範囲 v] を ((最大値 #) - (最小値 #)) にする
方法2
最初にデータの並び替えをしておけば、より簡単に範囲が求められる。具体的には、リストを並び替えた後、次のスクリプトを実行する。
[データ範囲 v] を (([調べるデータ群 v] の ([調べるデータ群 v] の長さ::list) 番目) - ([調べるデータ群 v] の (1)番目)) にする