どうも、こんにちは、だんなです。
2020年、プログラミング教育が小学校で必修化されることもあり、 本業システムエンジニアのだんなが息子に簡単なプログラミング(Python:パイソン)を教えてみる入門講座の第7回になります。
前回に引き続き、小学生の息子が実際にプログラミングを実践してみて、疑問に思った感じたところをブログ記事に残していきますので、今から子供にプログラミングを教えたい、親子で一緒に学んでみたい方なら誰にでもお勧めの入門教材になると思います。
- 簡単なプログラミングを体験してみたい方
- 今までプログラミングをやったことのない初心者の方
- プログラミング言語Python[パイソン]を使って簡単なプログラムを実行
- 画面やキーボード操作がわかりにくい場合は、Youtube動画を見て確認
- 疑問点があれば、コメントやtwitterに書いてくれればお答えします
- このサイト(あゆすた)をパソコンで見ている方ならそのまま実行可能
- ブラウザだけで実行可能なので、難しいインストール作業などの準備は不要
本業のシステムエンジニアの皆さんがプログラミングをする場合には、いろいろ面倒な準備が必要だったりするのですが、このプログラミング入門講座では「簡単に」「無料で」プログラム実行できます。
実行手順は以下の3点だけです。
入門教材① プログラミングを実行する画面を開く
入門教材② プログラムを書く(第7回ではQRコードみたいな模様をかいてみます)
入門教材③ 実行ボタンを押す
それでは、さっそく進めていきましょう!
QRコードって何に使われてる模様なの?
息子くん、QRコードって知ってるかい?
知ってるよ!LINEで友だちを追加するときに使うんでしょ?
そうだね、それ以外にもサイトのURLを知らせたり、今話題の「スマホ決済」などいろいろな用途で使われているよ。
QRコード(キューアールコード)は、1994年(平成6年)に自動車部品メーカーであるデンソー(愛知県)の開発部門(現在は分離しデンソーウェーブ)が発明したマトリックス型二次元コードである。
出典: フリー百科事典『ウィキペディア(Wikipedia)』
「QR」は Quick Response の頭字語であり、高速読み取りを目的の1つとしている名称である。「QRコード」はデンソーウェーブの登録商標(第4075066号)である。
トヨタ生産方式「カンバン」(ジャストインタイム生産システム)において、自動車部品工場や配送センター等での利用を念頭に開発された。しかし、誤り検出訂正の能力が高く、また、オープンソースとされたことから、トヨタのサプライチェーンの範囲から飛び出して独り歩きを始め、現在では日本に限らず世界に広く普及している。例えば、発明時には民間においてインターネットおよびスマートフォンが普及していなかったが、それらを用いる「QR決済」が現在、国によっては主要な電子決済の地位を占めるようになっており、発明から四半世紀経ってフィンテックを支える技術の1つとなっている。日本国内では、テレビ局が放送画面上にQRコードを提示して、自らのメディアであるテレビ放送とは異なるメディアのインターネットに誘う手法、あるいは、雑誌などの紙媒体にQRコードを提示してインターネットに誘う手法もしばしば見られ、旧来のメディアと新しいメディアのインターネットとの融合に用いられる例も多い。
いきなり話ムズすぎるって・・・。ブログ見てくれる人、減っちゃうよ。。
入門教材① プログラミングを実行する画面を開く
プログラミングを実行する画面を開きます。本当にめちゃくちゃ簡単です。
以下のリンクをクリックして下さい。
codingground SIMPLY EASY CODING [python]
codingground(コーディンググラウンド)という無料プログラム実行サイトが開きます。
上の画像のような画面が出てくれば準備完了です!
※ サイトが重くて動かない場合は、以下のサイトを使って下さい。
入門教材② プログラムを書く(第7回ではQRコードみたいな模様をかいてみます)
次にプログラムを書いていきましょう。
パソコンのキーボードを使って、画面左側にプログラムを書いていきます。
第7回は、Python[パイソン]というプログラミング言語を使って、QRコードみたいな模様をかいてみます。
画面の左側に、上の画像と同じ7行のプログラムを書いてみて下さい。
実行すると、QRコードみたいな模様をかいてくれるプログラムです。
お父さん、お父さん、
gyo+=
って部分、変だよ、何か間違えてない?
確かにおかしな書き方に見えるかもね。でも、これで正しくて、
gyo+=○○
と書くと、もともとgyoに入ってた数字(または文字)に○○を加え(つなげ)なさい、という命令になるんだよ。
さて、問題です。
x=1
x+=1
print(x)
何と表示されるでしょうか?
2 か 11 だと思う。
するどいねぇ~。この場合は、数字を足す命令になって
1 + 1 = 2
が表示されるよ。
じゃあ、
x=”1″
x+=”1″
print(x)
これは何と表示されるでしょうか?
これが 11 になるのかな。
正解!この場合は、文字をつなげる命令になって
”1″ つなぐ “1” → “11“
が表示されるよ。
書き方がわかんね~、という場合は、以下の動画を参考にしてみて下さい。
(質問があればコメントをお願いします。)
左側に7行のプログラムが書き終わって、以下のような状態になれば完成です。
前回の第6回:遠くまでジャンプしてみようで出てきたインデントって覚えているかな?
うん、覚えてるよ。右にズレている行のことだよね?
そうそう。今回もインデントが大事なプログラムだから、
インデント1つ分は、
・半角スペースキー を4つ
または、
・ TAB キーを1つ
押してズラしてね。
OKズラ!
入門教材③ 実行ボタンを押す
最後に、書き終わったプログラムを実行してみます。
左上にある「Execute」(実行という意味です)のボタンを押してみましょう。
画面右側の「Result」(結果)にQRコードのような白黒の模様が表示されましたか?
何度か 「Execute」(実行)を押しなおしてみてください。
違った模様が表示されれば、今回のプログラムが正しく動作したということです。
すげぇ!白黒の模様が表示された!でも、QRコードっぽくはないね、特に四隅の部分。
まぁ、こまかい部分は見逃してくれよ。(汗)
さて、今回のプログラムの大切なところは、for(フォー)「繰り返し実行しなさい。」という命令が2ヶ所に書いてある、ってことなんだ。
赤い部分のforが横向きxの模様を20回繰り返し、緑の部分のforが縦向きyの模様を20回繰り返すことで、こんな感じの模様が・・・
えいっ「Execute」(実行)!
えいっ「Execute」(実行)!
えいっ「Execute」(実行)!
えいっ「Execute」(実行)!
えいっ「Execute」(実行)!
見て見て~!お父さん、連打すると模様が動いて面白いよ~~
ま、まぁ・・・、難しい話はいいか。楽しく学ぶのが一番だ。。。
xが横向きで、yが縦向きってことはわかったよ。ってことは、
for y in range(20):
for x in range(20):
この数字を変えると、形が変わるのかな?
なんだ、わかってくれてるじゃ~ん。そうそう、数字を変えてみてごらん。
ためしに、100と100に変えてみよう。うぉぉぉ、デカくなって気持ち悪くなった・・・
moji=[“■”,”□”]
の記号も書き換えられそうだね。
(moji=[“●”,”○”]、 moji=[“1″,”0”]、 moji=[“木”,”本”]、などに書き換えて試す息子。)
めっちゃ面白いね!このプログラム。
mojiの中身は2種類じゃなくても正しく動くから、
moji=[“■”,”□”,”▲”,”△”,”◎”]
なんかに書き換えてみても面白いよ。
どうでしたか?プログラムはうまく動いたでしょうか?
もし、うまく動かずに英語がたくさん表示された場合は、プログラムのどこかが間違っていて、これを「エラー」と呼びます。エラーの画面は、第1回:計算機を作ろうを参考にしてください。
簡単で楽しい!と思った人、やっぱり面倒くさいんだなと思った人、いろいろだと思いますが、プログラミングを仕事にしている人はこういう事をやっているんですよね。(仕事のプログラミングはもっともっと複雑でたくさんの行数を書きます。)
次回の講座では、文字を操作するプログラムでなぜそのような動作をするのかを解説しようと思っています。お楽しみに!
以上、だんなの「初心者のためのPythonプログラミング入門講座」でした。
次回はコチラ
第8回:いっぱいの「い」を「お」に変えてみよう
おすすめの入門書籍・入門教材
初心者の方にオススメな本を紹介します。