提供: Japanese Scratch-Wiki

 
(13人の利用者による、間の48版が非表示)
1行目: 1行目:
制御項目にはいる'''○回繰り返す'''や'''○まで繰り返す'''の様なブロックをは違い、'''ずっと'''ブロックは中に組まれたブロックを永遠的に(ループ)実行するようにします。(もし'''(全て)を止める'''ブロックを実行した場合 ”ずっと” ブロックも停止します。)
+
{{エイプリルフール}}
 +
{{ひらがなヘッダ}}{{ブロック
 +
|name = ずっと
 +
|block = <sb>ずっと</sb>
 +
|category = [[制御ブロック|制御]]
 +
|type = [[C型ブロック|C型]]
 +
}}
 +
[[ファイル:ずっと例.png|thumb|right|224px|ずっとブロックを使って描かせた絵の例]]
 +
'''ずっと'''[[ブロック]]([[制御ブロック]]/[[C型ブロック]])は、中に入れたブロックを繰り返し実行するブロックである。[[() 回繰り返す (ブロック)|() 回繰り返す]]ブロックと[[() まで繰り返す (ブロック)|() まで繰り返す]]ブロックも同様に繰り返し処理を行うが、これらとの違いは、「ずっと (ブロック)」では、ストップボタンを押すか、[[() を止める (ブロック)|() を止める]]ブロックを実行するまで繰り返しが終わらないことである。そのため、このブロックの底部には、次のブロックをつなげるための出っぱり(凸部)がない。このブロックの下に置かれたブロックは実行することができないからである。
  
 他のブロックでループを止める事は'''(全て)を止める'''ブロック以外止めることは出来ません。
+
このブロックでは、若干の遅延が発生する。そのため、実行時の速度を最適化するには、スクリプトをシングルフレーム型にすべきである。
  
 +
==使用例==
 +
無限ループが必要な場面は数多く存在するため、このブロックは[[Scratch]]でもっとも使用されることが多いブロックの1つである。よくある使用例は次のとおり。
  
==実用例==
+
*スプライトの位置を常に別のスプライトに合わせる
 +
<scratchblocks>ずっと
 +
[スプライト1 v] へ行く
 +
end</scratchblocks>
  
このブロックはほとんどの時に必要とされ多くプロジェクトに使われています。例えば
+
*音楽のループ再生
 +
<scratchblocks>ずっと
 +
終わるまで [バトルテーマ v] の音を鳴らす
 +
end</scratchblocks>
  
*一つのスプライトをずっと指定した場所へ移動させるコマンド
+
*アニメーション(手を振る動作など)
[[ファイル:Move.PNG]]
+
<scratchblocks>ずっと
<br>
+
(12) 回繰り返す
+
@turnRight (3) 度回す
<br>
+
end
*音楽のループ再生<br>
+
(12) 回繰り返す
[[ファイル:Music.PNG]]
+
@turnLeft (3) 度回す
<br>
+
end
など…
+
end</scratchblocks>
  
 +
== 別の方法 ==
 +
<scratchblocks>
 +
<[1] = [73]> まで繰り返す
  
'''''Editing...'''''
+
end
 +
</scratchblocks>
 +
このようにしても、「ずっと」を実装できる。
 +
Pythonなどでは、このような方法で「ずっと」を実装する。(実際には、「1=73」の部分が「False」になることが多い)
 +
 
 +
==参照==
 +
*[[() 回繰り返す (ブロック)|() 回繰り返す]]
 +
*[[() まで繰り返す (ブロック)|() まで繰り返す]]
 +
*[[再帰]]
 +
 
 +
{{制御ブロック}}
 +
 
 +
[[en:Forever (block)]]
 +
[[de:Wiederhole fortlaufend (Block)]]
 +
[[nl:Herhaal]]
 +
[[カテゴリ:制御ブロック]]{{デフォルトソート:すつと (ふろつく)}}

2020年12月19日 (土) 08:58時点における最新版

このきじは ひらがなのページがあります。ひらがなでよむ
ずっと
ずっと
カテゴリ 制御
タイプ C型
ずっとブロックを使って描かせた絵の例

ずっとブロック制御ブロックC型ブロック)は、中に入れたブロックを繰り返し実行するブロックである。() 回繰り返すブロックと() まで繰り返すブロックも同様に繰り返し処理を行うが、これらとの違いは、「ずっと (ブロック)」では、ストップボタンを押すか、() を止めるブロックを実行するまで繰り返しが終わらないことである。そのため、このブロックの底部には、次のブロックをつなげるための出っぱり(凸部)がない。このブロックの下に置かれたブロックは実行することができないからである。

このブロックでは、若干の遅延が発生する。そのため、実行時の速度を最適化するには、スクリプトをシングルフレーム型にすべきである。

使用例

無限ループが必要な場面は数多く存在するため、このブロックはScratchでもっとも使用されることが多いブロックの1つである。よくある使用例は次のとおり。

  • スプライトの位置を常に別のスプライトに合わせる
ずっと
[スプライト1 v] へ行く
end
  • 音楽のループ再生
ずっと
終わるまで [バトルテーマ v] の音を鳴らす
end
  • アニメーション(手を振る動作など)
ずっと
(12) 回繰り返す
@turnRight (3) 度回す
end
(12) 回繰り返す
@turnLeft (3) 度回す
end
end

別の方法

<[1] = [73]> まで繰り返す

end

このようにしても、「ずっと」を実装できる。 Pythonなどでは、このような方法で「ずっと」を実装する。(実際には、「1=73」の部分が「False」になることが多い)

参照

Cookieは私達のサービスを提供するのに役立ちます。このサービスを使用することにより、お客様はCookieの使用に同意するものとします。