メインコンテンツへスキップ
レッスン 3 / 15推定時間: 25

料理レシピで学ぶ「入力→処理→出力」

プログラムの基本構造は、実は料理と同じ!材料(入力)を調理(処理)して、料理(出力)を作る。この基本的な考え方を、身近な例でマスターしましょう。

はじめに

こんにちは!今日は、プログラミングの一番大切な考え方を学びます。

それは「入力→処理→出力」という流れです。

難しそう?大丈夫!実は、あなたも毎日やっていることなんです。

今日の料理番組へようこそ!

想像してください。あなたは料理番組の司会者です。

「今日は、おいしいオムレツを作りますよ〜!」

オムレツ作りの流れ

🍳 オムレツの作り方

材料(入力)

  • 卵 3個
  • 牛乳 大さじ2
  • 塩 少々
  • バター 10g

調理(処理)

  1. 卵を割って、ボウルに入れる
  2. 牛乳と塩を加える
  3. よくかき混ぜる
  4. フライパンを温める
  5. バターを溶かす
  6. 卵液を流し入れる
  7. 箸でかき混ぜながら半熟にする
  8. 形を整える

完成(出力)

  • ふわふわのオムレツ!

これ、実はプログラムとまったく同じ仕組みなんです!

入力・処理・出力って何?

1. 入力(Input)

入力とは、プログラムに「渡すもの」です。

料理で言うと:

  • 材料(卵、牛乳、塩、バター)
  • レシピの情報(3個、大さじ2、少々)

プログラムで言うと:

  • ユーザーが入力する文字
  • クリックやタップ
  • 写真やファイル
  • センサーからの情報

2. 処理(Process)

処理とは、入力されたものを「変化させる作業」です。

料理で言うと:

  • 混ぜる、焼く、切る、煮る
  • 順番通りに作業する
  • 火加減を調整する

プログラムで言うと:

  • 計算する
  • 文字を組み合わせる
  • 条件で判断する
  • データを整理する

3. 出力(Output)

出力とは、処理の「結果」です。

料理で言うと:

  • 完成した料理
  • おいしそうな香り
  • きれいな盛り付け

プログラムで言うと:

  • 画面に表示される文字
  • 音が鳴る
  • ファイルが保存される
  • ロボットが動く

身近な例で考えてみよう

例1:自動販売機

🥤 自動販売機のプログラム

入力

  • お金(150円)
  • ボタンを押す(オレンジジュース)

処理

  1. お金を数える
  2. 150円以上か確認
  3. 在庫があるか確認
  4. 商品を取り出す準備
  5. おつりを計算(150円 - 150円 = 0円)

出力

  • オレンジジュースが出てくる
  • おつりは0円(出てこない)

例2:電卓

🧮 電卓のプログラム

入力

  • 数字「25」
  • 記号「+」
  • 数字「38」
  • 「=」ボタン

処理

  1. 最初の数字を記憶(25)
  2. 演算子を記憶(+)
  3. 次の数字を記憶(38)
  4. 計算を実行(25 + 38)

出力

  • 画面に「63」と表示

例3:カメラアプリ

📸 カメラアプリのプログラム

入力

  • カメラが捉えた光の情報
  • シャッターボタンを押す

処理

  1. 光の情報を画像データに変換
  2. 明るさを調整
  3. 色を補正
  4. ファイル形式に変換
  5. 保存場所を決める

出力

  • 写真ファイルが保存される
  • 画面にプレビュー表示

複雑な例:ゲームの場合

「じゃんけんゲーム」を分解してみよう

✂️ じゃんけんゲームのプログラム

入力

  • プレイヤーが選ぶ(グー/チョキ/パー)

処理

  1. プレイヤーの選択を記憶
  2. コンピュータがランダムに選ぶ
  3. 勝敗を判定
    • グー vs チョキ → グーの勝ち
    • チョキ vs パー → チョキの勝ち
    • パー vs グー → パーの勝ち
    • 同じなら引き分け

出力

  • 結果を画面に表示(「あなたの勝ち!」)
  • 効果音を鳴らす
  • スコアを更新

練習問題:入力・処理・出力を見つけよう

問題1:目覚まし時計

目覚まし時計の「入力・処理・出力」を考えてみましょう。

答えを見る

入力

  • 起きたい時刻の設定(7:00)
  • アラームのON/OFF

処理

  1. 現在時刻を確認し続ける
  2. 設定時刻と比較する
  3. 一致したらアラームを鳴らす準備

出力

  • アラーム音が鳴る
  • 画面が光る
  • バイブレーション(スマホの場合)

問題2:お小遣い計算アプリ

お小遣いを管理するアプリの「入力・処理・出力」を考えてみましょう。

答えを見る

入力

  • もらったお小遣い(1000円)
  • 使った金額(お菓子300円)

処理

  1. 今の残高を確認(例:500円)
  2. もらった分を足す(500 + 1000 = 1500円)
  3. 使った分を引く(1500 - 300 = 1200円)
  4. 新しい残高を記録

出力

  • 現在の残高表示(1200円)
  • 使用履歴の表示
  • 「残高が少ないよ!」などの通知

もっと複雑な処理の組み合わせ

レストランの注文システム

実際のプログラムは、いくつもの「入力→処理→出力」を組み合わせています。

【お客さん側】
入力:メニューを選んでタップ
処理:注文内容をまとめる
出力:注文確認画面

【キッチン側】
入力:注文データを受信
処理:調理の順番を決める
出力:調理指示を画面表示

【会計側】
入力:注文データ
処理:合計金額を計算
出力:レシート印刷

このように、一つの大きなシステムも、小さな「入力→処理→出力」の組み合わせでできています!

プログラミング的思考を身につけよう

日常生活で練習

普段の生活の中で「入力→処理→出力」を意識してみましょう。

宿題をする

  • 入力:問題文、教科書の情報
  • 処理:考える、計算する、文章を書く
  • 出力:答えをノートに書く

部屋の片付け

  • 入力:散らかった部屋の状態
  • 処理:分類する、整理する、収納する
  • 出力:きれいな部屋

友達にLINEを送る

  • 入力:伝えたいこと、絵文字
  • 処理:文章を考える、絵文字を選ぶ
  • 出力:メッセージが送信される

よくある質問

Q: 入力がないプログラムってある?

A: あります!例えば:

  • 時計(時間を表示し続ける)
  • スクリーンセーバー(きれいな模様を表示)

でも、よく考えると「電源ON」や「現在時刻」という入力があるとも言えますね。

Q: 出力がないプログラムは?

A: これも存在します!例えば:

  • データを保存するだけのプログラム
  • 計算するけど結果を表示しないプログラム

でも、「保存完了」という見えない出力があるとも考えられます。

Q: 処理が複雑すぎて分からない...

A: 大丈夫!複雑な処理も、小さく分解すれば理解できます。

カレー作りも:

  1. 野菜を切る
  2. 肉を炒める
  3. 煮込む
  4. ルーを入れる

一つ一つは簡単な処理の組み合わせです。

実践演習:CommandPlaygroundで体験

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

今日のまとめ

覚えておいてほしい3つのこと

  1. すべてのプログラムは「入力→処理→出力」でできている
  2. 複雑なプログラムも、小さな「入力→処理→出力」の組み合わせ
  3. この考え方は、プログラミング以外でも役立つ!

次回予告

次のレッスンでは、「変数」について学びます。

変数は「名前付きの箱」のようなもの。

  • 箱に物を入れる(値を保存)
  • 箱から物を取り出す(値を使う)
  • 箱の中身を入れ替える(値を更新)

プログラミングで一番よく使う、大切な概念です!

チャレンジ問題

ミッション:「翻訳アプリ」の仕組みを考える

スマートフォンの翻訳アプリは、どんな「入力・処理・出力」で動いているでしょうか?

ヒント:

  • 日本語を英語に翻訳する場合を考えてみよう
  • カメラで文字を読み取る機能もあるよ
答えの例を見る

テキスト翻訳の場合

  • 入力:日本語の文章(「こんにちは」)
  • 処理:
    1. 文章を単語に分解
    2. 辞書データベースで意味を検索
    3. 文法ルールに従って並び替え
    4. 自然な英語に調整
  • 出力:英語の文章(「Hello」)

カメラ翻訳の場合

  • 入力:カメラで撮影した画像
  • 処理:
    1. 画像から文字を認識(OCR)
    2. 認識した文字を言語判定
    3. 翻訳処理(上記と同じ)
    4. 元の画像に重ねて表示準備
  • 出力:翻訳された文字を画像に重ねて表示

素晴らしい!プログラムの基本的な流れが理解できましたね。この「入力→処理→出力」の考え方は、これからもずっと使います。次回も楽しみにしていてください!

さらに学習を続けるには

素晴らしい学習ペースです!次のレッスンに進むには、無料会員登録をお願いします。無料会員では各コース3レッスンまで学習できます。

無料で続きを学ぶ

各コース3レッスンまで学習可能

学習進捗の自動保存

コース修了証明書の発行