この記事は Hello World あたたたた Advent Calendar 2025 の記事です。
今日は Scratch で Hello World あたたたた を実装して解説していきます。
そもそも「Hello World あたたたた」が何かは 1日目の記事 をご覧ください。
コーディング例(Scratch)
Scratch のプロジェクトページ で実際に動かしてみることができます。
Scratchは公式サイトでプログラムを作成して、さらに公開することもできます。
Scratch はテキストコードではなく ブロックを組み合わせてプログラムを作る ビジュアル言語です。
以下は、今回の Scratch プログラムを処理の流れが分かる形で文章化したものです。
旗が押されたとき
hako を "" にする
「hako に あたたたた が含まれる」まで繰り返す
x を 0 から 1 までの乱数にする
もし x = 0 なら
char を「あ」にする
でなければ
char を「た」にする
hako を hako と char にする
hako と言う
お前はもう死んでいる と言う
このスクリプトを止める
コードとブロックの解説
開始
変数の宣言・代入
Scratch では「変数を作る」で値を保存できます。
-
hako
→ 出力された「あ」「た」をつなげて保存する変数 -
x
→ 乱数(0 または 1)を入れる変数 -
char
→ 今回出力する 1 文字(あ / た)
で、変数hakoに空の文字列をセットしています。
繰り返し
Scratch では次のブロックを使っています。
hako に あたたたた が含まれる まで繰り返す
条件が満たされるまでループを続ける、という意味です。
- まだ「あたたたた」が出ていない → 繰り返す
- 含まれた瞬間 → ループ終了
という直感的な構造になっています。
条件判定
もし x = 0 なら
char を あ にする
でなければ
char を た にする
-
xが 0 なら「あ」 - それ以外(= 1)なら「た」
Scratch の もし〜なら / でなければ が一般的なプログラミング言語の if / else に相当します。
文字の出力
hako と言う
Scratch では ◯◯と言う ブロックで文字を表示します。
- コンソール出力の代わり
- スプライトの吹き出しとして表示
視覚的に結果が分かるのが Scratch の強みです。
文字列の連結
hako を hako と char にする
変数 hako と 新しい char をつなげた文字にします。
Scratch では 「join(つなぐ)」ブロックを使って文字列の連結を行います。
文字列の判定(終了条件)
hako に あたたたた が含まれる
厳密な判定ではないですが、今回は * 「含まれているか?」 で判定しています。
文字を1文字だけ取り出すブロック

はありますが、start-end を指定して文字を取り出す機能が見つけられなかったので、このロジックにしました。
乱数生成
x を 0 から 1 までの乱数 にする
Scratch の乱数ブロックはとても直感的です。
- 0 または 1 がランダムに出る
- 他の言語の
rand()やRandom.nextInt()と同じ役割
Scratch の概要と歴史
Scratch の特徴
- MIT が開発した 教育向けビジュアルプログラミング言語
- ブロックを組み合わせるだけでプログラムが作れる
- 条件分岐・繰り返し・変数・乱数などプログラミングの要素がブロックとして揃っている
- 子どもから大人まで学習に使われている
Scratch の歴史
- 開発元:MIT メディアラボ
- 誕生:2007年
- 名前の由来:DJがレコードを手でこするスクラッチングに由来している
個人的なコメント
子供向けのプログラミング教室などでよく使われている。ブロックを並べることでコードを作っていくことができる。ゲームのようなビジュアルに関わる処理も簡単に書けるので教育用用途としてとても優れている。
処理を時系列・条件分岐で表すというよりブロックのかたまり単位に処理する形なので、PythonやJavaで書き慣れてると、処理の表し方が違ってて、どう記述するか思考方法のチェンジが必要。
ゲームでよく使うキャラの表示、当たり判定などが実装しやすく作られており、子供が思い描いたゲームのアイデアを実装しやすい。










