「変数」「関数」「if文」……。
プログラミングを始めると、まず出てくるこのカタカナ用語たち。
わかるようでわからないし、正直、コード見ただけでアレルギー反応が出る人もいると思う。
かくいう団子も、初めてHTMLやPythonを触ったときは、
「変数?いや変な数ってこと???」
「if文ってもし〜ならってこと?…それで何すんの?」
ってなってた。
でもある日、ふと思った。

これ、ラーメン屋の仕組みと似てないか?
注文を受けて、どんぶりを用意して、スープを注いで、麺と具をのせる。
この一連の流れって、プログラムの処理そのものじゃね???
というわけで今回は、焦げ団子的に「ラーメン屋」で全部たとえてみた。
- 「変数」「関数」「if文」「ループ」など、プログラミングの基本用語がすべてラーメン屋の日常でイメージできるようになる!
- 「クラス」と「オブジェクト」って何?も、ラーメン屋本部と支店でざっくり整理。
- コードの書き方そのものは出てこないけど、プログラムの考え方や流れが、なんとなく見えてくるようになります。
プログラミング入門者のための一冊


第1章:プログラムってなに?ラーメン屋で言うと厨房の動きそのもの


プログラムって聞くと、
「なんか黒い画面に英語みたいな文字がいっぱい出てるやつでしょ?」
「ハッカーがカタカタ打ってるやつ」
ってイメージを持ってる人も多いかもしれない。
でも実際はもっとシンプルで、「やることを順番に書いてあるだけ」。
たとえばラーメン屋を想像してみてほしい。
注文が入ったら厨房では…
- どんぶりを出す
- スープを注ぐ
- 麺をゆでる
- 麺をどんぶりに入れる
- 具をのせる(チャーシュー・ネギ・煮卵など)
- カウンターに出す
この一連の流れ、全部決まった手順で動いてるよな?
これ、まさにプログラム。
つまり、プログラムとは
「人間がやる作業を、コンピューターでもできるように、順番通りに命令を書いたもの」ってこと。
つまりプログラミングとは、この「手順」を一つひとつ命令文で書いていく一連の作業のことを指す。
たとえば「どんぶりを出す」という作業は、プログラムではこう書くとする。
get_bowl()
これは、「どんぶりを出して!」と命令していることになる。
こうやって、「人間がやる作業」をひとつひとつ命令の形にして並べていくのが、プログラミングの基本。
この時点では、まだ意味がわからなくても大丈夫。
このあと、「変数って何?」「関数って何?」っていうのを、すべてラーメン屋の仕組みに例えて説明していこう。
※この () のついた命令は、あとで出てくる「関数」ってやつだけど、
いまは「動きの名前」だと思ってOK。第3章でわかりやすく説明するから安心してほしい。
第2章:変数ってなに?=ラーメン屋で言うと「どんぶり」だ!


プログラミングでは、「変数(へんすう)」という言葉が最初に出てくる。
でも、初めて見る人からすれば、
「“変”ってことは変わるの?数って何の数?」
「数字じゃない文字でも“変数”って言うの?」
って疑問しか湧かない。
焦げ団子的にいえば、変数はラーメン屋の“どんぶり”だ。
どんぶりにラーメンをよそう=変数にデータを入れる
たとえばこんなコードがあったとする。
ramen = "味噌ラーメン"
これはこういう意味:
- ramen は 「どんぶり」の名前
- “味噌ラーメン” は その中に盛られたラーメン
つまり、ramen という器に、味噌ラーメンという中身を入れてる状態。
中身はあとから変えられる


ramenの中身を変えたい時は、
ramen = "しょうゆラーメン"
って書き直すと、同じどんぶりの中身が「味噌」→「しょうゆ」に変わる。
つまり変数とは、名前をつけた器に、いろんな中身を入れて使い回せる仕組みのこと!
この器があることで、後から「今何が入ってる?」って聞いたり、「この中身を関数に渡してラーメンを作る」なんてこともできるようになる。



今日は味噌、明日は塩。
そんな気分屋に寄り添ってくれるのが変数ってやつ。
- 変数は「中身を自由に入れ替えられる、名前付きのどんぶり」
- ramen = “味噌ラーメン” → ramenという器に味噌ラーメンを入れた
- ramen = “しょうゆラーメン” → 中身を醤油に変えた
- これからのプログラムでは、この「どんぶりの中身」を操作していくのが超重要
第3章:関数ってなに?=ラーメン屋の「自動ラーメンマシン」だ!


プログラミングをやってると、よく出てくるのが「関数(かんすう)」って言葉。
でも、最初のうちはこう思う人も多いんじゃないだろうか?
「関数って…なに?計算のやつ?なんでプログラミングに出てくるの?」
まず:関数ってなに?
関数(function)とは、よく使う一連の処理を「ひとまとめ」にして、名前をつけておくしくみ。
関数とは「いつも同じ作業をやってくれる厨房マシン」
たとえば、ラーメン屋で「しょうゆラーメン」を注文されたとき、店員さんは毎回こうやって作ってる。
- どんぶりを用意する
- スープを注ぐ
- 麺を入れる
- チャーシューをのせる
- ネギをトッピングする
完成!
でも、これを注文のたびに毎回全部手作業でやってたら、めちゃくちゃ時間かかるし、ミスも増えるし、面倒くさすぎる!!!
だから考えた。
「この作業、毎回まとめて自動ラーメン作成装置にしておけないか?」
そこで登場するのが、自動ラーメンマシン(=関数)。
関数を作る(定義する)
名前:「しょうゆラーメン製造マシン」
ボタンを押すと、上の①〜⑤を自動でやってくれる!
プログラミングでは、こんなふうに関数を定義する。
def make_ramen():
print("どんぶり用意")
print("スープ注ぐ")
print("麺を入れる")
print("チャーシューをのせる")
print("ネギをトッピングする")
これで関数の定義は完成。
ただし、この関数を作っただけでは、まだラーメンはできない。
これは、“しょうゆラーメンのレシピ”を作っただけの状態。
厨房の壁に貼っただけ。このままじゃラーメンは出てこない。
実際に厨房が動くのは、「その関数を呼び出したとき」。
関数を呼び出す(実行する)
関数を呼び出す(=実際にラーメンを作る)時は
make_ramen()
と、この make_ramen() を呼び出すだけで、初めてラーメンが完成する。



作るだけで満足するな。使わなきゃ意味ねえ!!
レシピカードを額縁に飾って満足してるだけじゃ、客はラーメンにありつけないって話だ。
材料を渡す(トッピング編)
ここまでで、「make_ramen()」を呼び出せば、しょうゆラーメンが完成する流れはわかった。
でもここでちょっと欲が出てくる。
「チャーシューのせたいな……」
「味噌ラーメンも作れないのか?」
実は、関数って、作るときに「材料を渡せる」ようにすることもできる。
それが引数(ひきすう)というやつ。
たとえば、ラーメンにトッピングを指定できるようにするには、関数を定義したところにこう書く。
def make_ramen(topping):
print("ラーメン+" + topping)
これで「チャーシューのせて!」って言いたければ、関数を呼び出す時にチャーシューと入れる。
make_ramen("チャーシュー")
→ 結果:
ラーメン+チャーシューが完成する!
渡した「トッピング」が、そのままどんぶりの上に乗るようなイメージ。
つまり、関数は「作るときに材料を渡せば、それに応じて中身を変えてくれる」便利なマシンでもあるってこと。



スイッチ押すだけでラーメン出てくるって最強じゃね?
それが関数ってやつ。
トッピングだけじゃ物足りない? → 味と具、両方渡せるようにしよう(複数引数)


ラーメンを作るとき、こう思うかもしれない。
「しょうゆや味噌みたいに味も指定したいし、チャーシューみたいな具も指定したいんだけど…?」
そんなときは、2つ以上の材料(引数)を関数に渡すことができる。
def make_ramen(flavor, topping):
print(flavor + "ラーメン+" + topping)
- flavor → ラーメンの味(しょうゆ・味噌・塩など)
- topping → 上にのせる具材(チャーシュー・ネギ・煮卵など)
使い方(呼び出し方)複数引数
さっき指定したflavor(味)とtopping(具材)を呼び出すには
make_ramen("味噌", "チャーシュー")
と書く。
これで味噌チャーシュー乗せラーメンの完成だ!
関数まとめ
- 関数は「何回も使う処理」をまとめて名前をつけておく機能
- 「注文のたびに手作業」じゃなくて、「名前を呼ぶだけで自動で動く」
- プログラミングの世界では、「関数」=作業を省略する便利な箱
- 関数は「いくつでも材料を渡せる」=複数引数
ITエンジニアおすすめの初心者向けプログラミング講座!


焦げ団子的まとめ:変数と関数って結局どういうこと?
プログラミングをラーメン屋でたとえるなら、変数とは「中身を自由に入れ替えられる、名前のついたどんぶり」のようなものだった。
たとえば ramen = “味噌ラーメン” と書けば、ramenという器の中に味噌ラーメンが入ったことになる。
その中身はいつでも ramen = “しょうゆラーメン” のように変えることができる。
この「必要なときに中身を変えられる」柔軟性こそが、変数の大きな特徴だ。



そのとき食べたい味に変えられるのが変数ってことな。
一方、関数というのは「ラーメンを自動で作ってくれる厨房マシン」みたいな存在だった。
どんぶりを出して、スープを注いで、麺を入れて、具を乗せて……という一連の作業を、make_ramen() のように一言でまとめて呼び出せるようにしたものが関数だ。
そして関数には、「味」や「トッピング」のような材料を渡すこともできた。
それによって、味噌チャーシューでも塩煮卵でも、お好み通りのラーメンを一瞬で出せるようになる。



もう全部のせでいいか?
この「必要な情報を渡して、柔軟に中身を変える仕組み」が引数(ひきすう)だった。
さらにプログラムの中では、ラーメンがどう仕上がったかを画面に表示するために print() という命令がよく使われた。
これは「カウンターにラーメンを出す」ようなもので、実行結果を見たいときに欠かせない。
というわけで、ここまでの話をラーメン屋でまとめると――
変数=どんぶり、関数=厨房マシン、引数=トッピング指定、print=カウンターに出す処理。



これだけ覚えておけば、初心者としてはバッチリだ。
次回予告:注文の好みに対応できる!if文=接客スタッフ登場!
ここまでで、材料を自由に扱い、ラーメンを自動で作るところまでできるようになった。
でも現実のラーメン屋では、「辛口で!」「ネギ抜きで!」といった細かい要望にも応えなきゃいけない。
次回は、その「お客さんのリクエスト」に応じて行動を変えるしくみ――
if文(条件分岐)を、またラーメン屋を舞台にじっくり解説していくぞ!



焦げ団子的プログラミング入門、次回もよろしく!
プログラミングに興味がある方におすすめ初心者本!