古代エジプト数学を体感！
協働プログラミングでピラミッド作成－マインクラフトを使ったプログラミング－2019 年 7 月 中学数学プログラミング授業
組番氏名()

古代エジプト数学を体感！協働プログラミングでピラミッド作成
振り返り
中学数学の文字式の分野において，ブロックを規則的に並べ，規則性に気づかせｎ番目のブロックの数を答えるという問題がよく出題される。たとえば次のようなものである

数学の勉強(授業)は規則性に気づき一般かされた n 番目の個数を答えるだけで終わりで実際にそれを活かす場がなかった。並べられたものを計算するだけで終わりだった。そこで、プログラミングを通して建物を建てながら，数式で一般化したものを応用する力を養っていこうとするのが今回の趣旨である。

最終目的
最終課題プログラミング① 高さ 5 段のピラミッドを作る② 高さｎ段のピラミッドを作る
ポイント
高さ 5 段のピラミッドを作るには(1) 一番下は何個のブロックが必要か(2) 1 段ずつ上がるにつれてブロックは何個ずつ減っていくか(3) 対称性をどのように活かすか高さ n 段のピラミッドを作るには(1) 一番下は何個のブロックが必要か(2) 1 段ずつ上がるにつれてブロックは何個ずつ減っていくか(3) プログラミングの変数をどう使うか(4) 対称性をどのように活かすか

このように，ピラミッドはすべて計算されて作っているということを実感して，エジプトは紀元前から数学がかなり発展していたということを学んでほしい。いままで学んだ数学の知識を総動員しよう！
プログラミングを使ってマインクラフトを動かす基本知識・立ち上げるソフトは、マインクラフトと code connection の２つ・マインクラフトを立ち上げたら最初のゲーム設定は新しく作る → 草ブロック → クリエィティブモード ピース 常に昼間 の 3 つの設定だけ
・サーバーとの接続方法の確認
・プログラミング作成と実行画面(マインクラフト画面)の切り替え 1 番左上のボタン
・実行画面(マインクラフト画面)でｔ

Escを押すとコマンドが入力できる① surface と マウス を使って主人公の動かし方を学ぶ
主人公の歩き方キーボードとマウスの使い方
主人公の視点を変える(F5 ボタン)
エージェントにブロックを渡す
次にプログラムをかく② エージェントに対して必要最低限のコマンドプログラミング(練習問題)(1) エージェントを自分の位置に戻る

エージェントといって，作業するロボット

コマンド名は何でもよい(2) 左をむかせる

覚えやすいもの
ただし半角英数③ ブロックを並べる必要最低限のコマンドプログラミング(練習問題)(1) 3 つのブロックを左に並べる
左の置く－１歩前―左の置く－１歩前－左の置く－１歩前

(2) 3 つのブロックを並べ 5 歩いて 3 並べるを３回繰り返す(3) ブロックを 1 個 5 歩 2 個 5 歩 3 個 ならべる

④

繰り返しコマンド次に繰り返しコマンドを利用するとプログラムが簡単になるということを生徒に理解させる(繰り返しコマンドの利用)(1) 3 つのブロックを並べ 5 歩いて 3 並べるを 5 回繰り返す⑤ 変数を定義して変数に代入
n=10 を代入すると 10 回繰り返すといった繰り返しの指定をできるようにする(1) 3 つのブロックを並べ 5 歩いて 3 並べるをｎ回繰り返す

⑥ 2 種類の変数を利用
変数を定義して，変数を１増やすというコマンドを使う(1) ブロックを左 1 個 5 歩 左 2 個 5 歩 左 3 個 ならべる

(2) ブロックを 1 個 5 歩 2 個 5 歩 3 個・・・・・5 歩 10 個 をパラメーターと変数を用いる
ｎ=10 を代入して繰り返す(3) 下の図のような正方形の 1 辺を増やしながら正方形を並べる(1)1 辺１の正方形

５歩 1 辺 2 の正方形 ５歩 1 辺 3 の正方形 ５歩 1 辺 4 の正方形(繰り返しと変数を用いる)(解答は別紙)⑦

数式 2n－1 の作り方
2n－1 個のブロックを並べる(1) ブロックを 1 個 －5 歩－ 3 個 －5 歩－ 5 個－ 5 歩－ 7 個－5 歩 － 9 個ならべる
奇数個，数字を増やしながら並べる
ｎ=5 を代入して，ブロックを並べるようにする⑧

いよいよピラミッドを作ろう！
何を何回繰り返すのか規則性を考えよう

またピラミッドの対称性を利用しよう(１) 図のような高さ５段のピラミッドを作るには，１番下の段は何個のブロックが必要だろうか(２) １段上がるごとに何個ずつブロックが減っていくだろうか(３) 規則性を見つけよう
高さｎ段のピラミッドをつるには，１番下の段は何個のブロックが必要だろうか(４) 対称性注目して，何を何回繰り返すプログラムを作ればよいであろうか。
(解答は別紙)ヒント・・・ ブロックは下に置く という設定の方がよい。
エージェントの向きを変える というコマンドを入れる
エージェントが上に進む というコマンド(5) 10 段， 15 段のピラミッドを作ってみよう。
高さを 10 に設定したときのピラミッド

マインクラフト プログラミング練習問題 解答

１ 下の図のような正方形の 1 辺を増やしながら正方形を並べる(1)1 辺１の正方形

５歩 1 辺 2 の正方形 ５歩 1 辺 3 の正方形 ５歩 1 辺 4 の正方形(繰り返しと変数を用いる)

２いよいよピラミッドを作ろう！
何を何回繰り返すのか
対称性を利用しよう

規則性を考えまたピラミッドの(１) 図のような高さ５段のピラミッドを作るには，１番下の段は何個のブロックが必要だろうか
9個(２) １段上がるごとに何個ずつブロックが減っていくだろうか・・・ 2 個(３) 規則性を見つけよう
高さｎ段のピラミッドをつるには，１番下の段は何個のブロックが必要だろうか・・・２ｎ－１個対称性注目して，何を何回繰り返すプログラムを作ればよいであろうか。

プロフィール
はじめに
私は，普段の授業から，ICT 教育に興味があり，パワーポイントと使っての解説授業，タブレットと geogebraを使ってのシミレーション授業を展開して，授業の様子やファイルを①の自分のサイトにアップしています。最近は自分で勉強したマインクラフトのプログラミングの研究や実践もアップしています。ほとんどの教材は下記のサイトにまとめてありますので，参考にしていただけると幸いです。

数学・プログラミングのホームページ「The Essential math Meets」
http://essential-math.main.jp/visitors/
普段の数学やプログラミングの実践や教材の紹介(パワーポイントや geogebra)を定期的に更新しています。このファイルと発表で使ったパワーポイントファイルもこの自分のサイトにアップしています。ご自由にダウロードして使ってもかまいません。そのときには，メールを送っていただいて，感想をいただけると幸いです。

Youtube のページ 「The Essential Math.Meets」
Youtube に学校で使った教材を動画にしたり授業の様子をアップしています。マインクラフトを使った授業の様子や，マインクラフトを使ってどのような授業ができるかいろいろ実験動画をアップしています。
（「The Essential Math.Meets」で検索してください）

数学・プログラミング ブログ
https://ameblo.jp/essential-math/
実はマインクラフトは全くの素人で，プログラミングを実践したいがために完全独学で勉強しました。その奮闘記をブログに更新しています。ときどき，数学の実践内容もアップしています。

今回のより詳しい実践内容
今回のピラミッドを作るプログラミングのより詳しい実践内容を SWAY にまとめました。
https://sway.office.com/0SJv8LbXUItGZd7u にアクセスして参考にしてください。
最後にお忙しい中，私の実践報告を聞いていただきまして本当にありがとうございました。心より感謝申し上げます。もしご質問などがあれば，右記のメールアドレスに書いていただけると幸いです。