完成したゲームは、自分だけでなく友達や家族と共有できます。「自分で作ったゲームが動く!」という体験は、大きな自信につながります。ブロック崩しゲームでは、ボールの速度やブロックの配置を工夫して、自分だけのオリジナル遊び方も作れちゃう。友達に遊んでもらうことで、面白さや改善点のフィードバックも得られ、挑戦意欲がさらに高まります。また、友達と得点を競ったり、ルールをアレンジして遊ぶことで、より楽しくプログラミングを学べます。遊びながら学ぶことで、ITスキルや創造力、論理的思考力も自然に育ちます。当塾では、中学生が楽しみながらプログラミングを学び、成長を実感できる環境を提供しています。小さな成功体験を積むことで自信がつき、次の学びへの意欲も高まるはず。プログラミングは単なる技術習得ではなく、論理的思考力・創造力・挑戦力を同時に育てる学びです。まずは挑戦して、自分の成長を実感してみよう。
プログラムは、思った通りに動かないことも多く、その過程も学びの大切な一部。特に初めてゲームを作る生徒にとって、ボールの跳ね返り方やブロックの消え方が思った通りでないことはよくある話。ここで諦めずにコードを少しずつ修正することで、論理力や粘り強さ、問題解決力が自然に育ちます。たとえば、ボールがパドルに当たったときの跳ね返り角度やブロックの残り方を工夫するだけで、ゲームの面白さが大きく変わります。こうした「小さな改善」の積み重ねが、達成感や自信につながります。また、バグや失敗を単なるミスとして捉えるのではなく、「改善のチャンス」として楽しむことが重要。試行錯誤の過程で、自分で考え、工夫し、失敗を分析して修正する力が養われます。この経験はプログラミングだけでなく、勉強や日常生活の問題解決にも役立ちます。さらに、ゲーム制作では、自分が設定したルールや仕組みをどう動かすか考える必要があります。この過程で、論理的思考や計画性も自然に身につきます。当塾では、楽しみながら試行錯誤を経験し、ゲームを完成させる過程を大切にしています。バグを恐れず、失敗も楽しむ姿勢でプログラミングの楽しさを体感してください
今回は、数字の並び替え(バブルソート)だよ。画像はバラバラの数字(5, 2, 8, 1, 6, 3)を順番に並べる例です。これで、コンソールに [1, 2, 3, 5, 6, 8] と並んだ数字が出ます。手順を守れば、どんな数字でも正しく並べられます。ポイントは・・・アルゴリズムを頭で考えるだけでなく、プログラムで動かすと「手順が目で見える」ので理解が深まるよ。次は、自分でルールを考えてオリジナルアルゴリズムを作ってみよう!
今回は、実際にコンピュータに命令して動かしてみよう。←画像は迷路を動かす例(Processing)です。迷路を自動で進むアルゴリズムを、簡単に表現できます。これで、四角が右に進んでゴールにたどり着く動きを確認できます。迷路のアルゴリズムは「順番通りにルールを守る」ことがポイントね。さぁみんな、自分の手で書いて、動かして、確認してみよう!
前回は、アルゴリズムが「問題を解く手順やルール」だと学びました。今回は、実際に考えてみよう。<1 迷路のアルゴリズム>迷路をスタートからゴールまで進むとき、「右に曲がれるなら右へ、進めなければ左に曲がる」というルールで進むことを考える。このルールを順番通りに実行すると、必ずゴールにたどり着く手順ができます。これが迷路のアルゴリズム。紙や画面で線をたどるだけでも、頭の中で“手順”を確認できます。<2 数字の並び替え(ソート)のアルゴリズム> 次に、バラバラの数字を小さい順に並べる例です。
たとえば [5, 2, 8, 1] という数字があるとします。
・まず隣同士の数字を比べる。
・大きい方を右、小さい方を左に入れ替える。
・これを順番に繰り返す。
これだけで数字は [1, 2, 5, 8] の順に並びます。これも「正しい手順(アルゴリズム)」に従った処理。
ポイントは・・・アルゴリズムは「順番とルールを守ること」が大事です。手順を間違えなければ、コンピュータも人も同じ結果にたどり着けます。
次回は、プログラムとして動かしてみる体験編ね。
チューリング・マシンは、実際に動く機械ではなく、頭の中で考えるための「想像上のコンピュータ」。
仕組みはとてもシンプルで、3つのパーツからできてるんだ。
(1)テープ:長い紙の帯のようなもので、「0」や「1」などの記号を書き込める。
(2)読み書きヘッド:テープの上を左右に動いて、記号を「読む」ことも「書く」こともできる。
(3)ルール表(命令書):「もし0を読んだら1を書いて右に進む」みたいな動きを決めるルール。
この3つだけで、チューリング・マシンは計算や情報処理を行います。
つまり、今のコンピュータがやっていることを、超シンプルにしたモデルというわけ。
チューリングが知りたかったのは、
「どんな問題でも、機械が計算して解けるのか?」ということ。
この問いに答えるために、彼はチューリング・マシンというモデルを考え出した。
その結果、チューリングは「解けない問題も存在する」ということを証明します。
つまり、コンピュータにも“限界”があるというわけ。
この発想は、今のコンピュータ科学、AI(人工知能)、プログラミング理論などの原点になってます。
今日は、コンピュータの”考え方”をのぞいてみようか。
「アルゴリズム」という言葉を聞くと、難しそうに感じるかもしれません。でも簡単に言うと、アルゴリズムとは「問題を解くための手順やルール」のことです。たとえば、朝起きて学校に行くまでの順番を考えてみよう。
① 起きる → ② 顔を洗う → ③ 朝ごはんを食べる → ④ 歯を磨く → ⑤ 学校に行く
これも立派なアルゴリズムなんです。「順番通りにやると必ず学校に間に合う」というルールがあるから成り立ちます。でも、順番を間違えるとうまくいかないこともあるよね。
コンピュータの世界でも同じで、アルゴリズムは「計算や処理を正しく、効率よく行うための手順」なんです。たとえば、数字を小さい順に並べる、最短ルートを見つける、迷路を抜けるなど、さまざまな場面で使われます。
プログラムを書くとき、まず「どうやって解くか」というアルゴリズムを考え、それをコンピュータにわかる命令に変換します。アルゴリズムがしっかりしていれば、コンピュータは正確に、速く、私たちの考えた通りに動いてくれるんです。
ゲームなので、例えばブロックが壊れた時に「効果音」あった方が、楽しいよね。音を出す・・・もう完成前、最終段階です。最後の味付けに自分のイメージに合った音を探すのも、また楽しい。そこで、効果音を出したいけど、設置場所がわからない方大勢いると思いますので、階層イメージを図示しとくね。MySketch/dataではなく、MySketchの中にdataを作ってください。そしてdata/hit.mp3の順です。ここ要注意ね。音源名は好きなようにrenameして、コード内のと一致させといてください。自分で作ったゲームで、イメージ通りの音が鳴る。この上ない喜びでしょう。ただし、これらは著作権フリーの物を使うこと。リテラシーですよ。もちろん自作音なら全く問題ありません。みんな、上手く音を出せたかな?
みんなは、スマホやパソコンってどうやって動いていると思う?
ボタンを押せばアプリが開くし、計算アプリで数字を入れると答えが出てきちゃう。
当たり前のように使っているけれど、「どうしてそんなことができるの?」と考えたことはあるかな?ないよね・www。
実は、その「コンピュータの考え方のもと」を作ったのが、今からおよそ90年前の数学者 アラン・チューリング なんです。(と、大学の講義でその名を初めて知った。)
彼が考えた“理想のコンピュータ”の姿こそが、チューリング・マシン(Turing Machine)。
聞きなれないかもしれませんが、これがめちゃくちゃ大事な考え方なんです。(大学では、離散数学やオートマトンもやったなぁ・懐かしい)
いよいよシリーズの最終回です。ここまで、コンピュータが「0」と「1」で考え、計算し、命令を実行していることを学んできました。じゃぁ、次は実際に自分の手でコンピュータを動かしてみようか。当塾のプログラミング教室では、初心者にも人気の「Processing(プロセッシング)」という言語を使ってます。Processingは、文字だけでなく“絵や動き”を簡単に作れるのが特徴。たとえば←画像のコードを入力してみよう。このたった4行で、画面の真ん中に丸が描かれます。「setup()」は最初に一度だけ実行する命令、「ellipse」はだ円を描く命令です。描けたら、次は数値を変えてみよう。今度はどんな図形になったかな?色々試すと結果が変わってきて面白いよね。英単語も覚えるし、こうやってコンピュータがあなたの指示通りに“動く”瞬間を、ぜひ体験してみて。
実は、プログラミングは、難しい計算の道具ではなく、“自分の考えを形にする言葉”なんです。ここからが本当のスタート。こうやって、君自身のアイデアでプログラムを作れるようになったら、ママもびっくり仰天。さぁ、本格的なプログラミングを始めよう!