このページでは、プログラミングに関するコンテンツを紹介しています。



オンライン・テスト


こちらのサイトでは、私が自作したプリントを公開しています。私が普段教えている時はこれを利用していますが、正直紙がもったいないなぁと思うときがあります。例えば、記憶の定着のために同じプリントを繰り返しやってもらうことがあります。この一部分だけ使いたいのだけどとは思いつつも全部を印刷して必要な部分だけ使ってしまうと、紙を無駄にしたという罪悪感が残ります。また、同じレベルで少し内容を変更した問題がほしいと思ったりもします。そこで、コンピュータ上でできるテストが作れないものかと、いろいろと模索していました。

また、AI(人工知能)を利用した様々なサービスについて、ここ数年でよく耳にするようになりました。さらに、私のような一般の人間でも人工知能を利用することができるようになりました。特に、ChatGPTというOpenAIが2022年11月に公開した人工知能チャットボットの能力については、普段のニュースで報道されるほどのインパクトがありました。また、googleからもGeminiという同様のサービスが提供され始めるなど、これから大きな変化がやってくるような予兆があります。

そこで、これらのサービスを利用したらなにかできないだろうかということで、いろいろ試行錯誤の末にサイト上で実行可能なオンライン・テストを作ってみました。いずれのプログラムも「ウエブアプリ」と呼ばれるもので、インターネットに接続していれば、プログラムのインストールをしなくても利用できます。また、答え合わせもボタン一つなので、丸付けの間違いもなくなります。これらのテストは、私の教科指導にも利用し始めています。

手書き漢字学習

AIの手書き文字認識を利用して、漢字テストを作りました。中学国語の教科書(光村図書)の漢字と「意味から学ぶ頻出漢字3000」(第一学習社)の漢字を利用しています。どちらも、「ひらがな→漢字」と「漢字→ひらがな」のどちらでもテストできます。


手書き漢字テスト

手書き漢字テスト

手書き文字で漢字入力ができ、それを利用して漢字テストをオンラインで実行できるページです。漢字は、中学国語教科書(光村図書)と「意味から学ぶ頻出漢字3000」(第一学習社)から採用しています。各単元別にテストを行うことができます。アプリのダウンロードは一切必要ありません。



日本地理 四択問題

地理学習において、グラフや図を含む問題は数多く出題されます。設問の形式は似通っていますが、それぞれ微妙な違いが存在し、これを見極めなければ正確な解答にたどり着くことが難しくなります。このため、多くの人が「すべてを覚えなければならない」と感じ、苦手意識を抱えていることでしょう。しかし、すべてを丸暗記する必要はありません。重要なのは、「ここがツボ」というポイントを押さえ、理解することです。ただし、ツボを見つけることも容易ではありません。

そこで、四択問題を繰り返し行うことで、地理の知識を徐々に定着させることができるのではないかと考えました。この方法では、データを繰り返し見ながら答えることで、一つ一つのデータだけでなくデータの全体的な傾向をとらえる助けになると考えています。

なお、どうでもいいことですが、こちらのオンライン・テストではAIサービスを利用していません。プログラムはJavascriptのみで書かれています。


地理(日本)四択クイズ

地理(日本)四択クイズ

このページでは、日本の地理に関する四択問題のアプリを公開しています。利用は無料です。



手書き英単語学習

英語学習の中で、英単語を覚えることに苦労する人は多いと思います。英単語を覚えるために様々な方法がありますが、私は書くことが一番よいと思っています。そこで、以下のようなWEBアプリを作りました。このアプリでは、googleのスプレッドシートに記録したデータに基づいて問題を作成します。したがって、用途に応じて問題をカスタマイズできます。あらかじめ設定してあるテストもあります。

カスタム英単語テストアプリ

カスタム英単語テストアプリ

英単語を画面上に手書きして答える英単語テストアプリです。googleのスプレッドシートからデータを読み込んで問題を設定できるので、カスタマイズできます。

また、英単語ターゲット1900(旺文社)のデータに特化したアプリもあります。

手書き英単語学習アプリ

手書き英単語学習アプリ

手書き文字をAIで読み取って正誤を判定するWEBアプリを公開しているページです。今のところ無料で利用できます。



歴史記述問題

生成AI(ChatGPT)の自然言語処理能力を利用して、記述問題の答えが適切かどうかを判定します。ここでは中学校レベルの歴史についての記述問題を扱っています。

歴史記述問題のアプリ

歴史記述問題のアプリ

歴史記述問題の答えをAIで判定するWEBアプリを公開しているページです。今のところ無料です。



英文和訳の検証

利用するAIは、自然言語処理という仕組みをつかって学習しているので、英語や日本語を巧みに扱います。そこで、人間が英文和訳した日本語の文章が適切かどうかを判定することができるプログラムを作ってみました。間違いがあれば、間違ったポイントを指摘してもらうこともできます。

入力した和訳をAIが検証するプログラム

入力した和訳をAIが検証するプログラム

chat-GPTのAI(Artificial intelligence/人工知能)を利用して、自分で英文和訳した文章を検証するWEBアプリを紹介しています。今のところ、利用は無料です。





スクラッチ


ここで公開しているプログラムは、アメリカ・マサチューセッツ工科大学のグループが開発したスクラッチを利用して作られています。このプログラム開発環境では、プログラミングの初心者でも理解しやすいように、直感的な方式でプログラミングを行うことができます。さらに、これが無料で利用することができるため、世界中の人々から日々新しいプログラムが公開されています。また、日本語で表示することもできるので、日本の多くの小・中学校がプログラミングの授業にスクラッチを利用しているようです。書籍や解説本も多数出版されています。以下は、その一例です。

以下のいずれのプログラムも、スクラッチのサイトで公開しています。スクラッチのアカウントがあれば、ご自分のサイトへプログラムをコピーして自由に改変することができます。また、当サイトのページ上で動かすことができるようになっていますので、スクラッチのアカウントがない方でもプログラムを実行したり、改変することも可能です。



自動販売機のはたらきをするプログラム


お金をいれてほしい飲み物のボタンを押すと、その飲み物が出てくる自動販売機。いまでは当たり前のようにありますが、そのはたらきの仕組みを意識して利用している人はあまりいないでしょう。以下のページでは、飲み物の自動販売機のシミュレーション・プログラムを作成し、フローチャート図を使いながらそのはたらきを解説しています。


飲み物の自動販売機のプログラム

飲み物の自動販売機のプログラム

飲み物の自動販売機のプログラムをスクラッチを使って作成し、その内容を解説しています。



正多角形を描くためのプログラム


正多角形を描くことは小学5年で学習します。そこではコンパスと定規を使って描きます。一方、プログラミング教育の一環で「プログラミングで正多角形を描いてみよう」という課題が文部科学省の小学校プログラミング教育の手引に提案されています。そこで、どうすればプログラミングで正多角形を描くことができるのかを解説してみました。

コンピュータで正多角形をかいてみよう(1)

コンピュータで正多角形をかいてみよう(1)

コンピューターで正多角形をかくには、コンパスを使ってかく場合とは異なる方法で行います。そこで、ここでは学校の内容から発展させた形で、「プログラミングによる正多角形のかき方」を解説します。



ライントレースをするネコのプログラム


中学校の技術で、線に沿って動く車を作成するような授業をやっているところがあります。このような車を「ライントレース・カー」といいます。それをつくるための工作キットも販売されていますが、ここではプログラミングでライントレースのシミュレーションを実現してみようということで、ネコが線の上を動くようなプログラムを作成しました。どのような線に沿ってでも動けるようにプログラムを作成しています。また、その仕組みについても解説しています。

ライントレース「ねこ」のプログラム

ライントレース「ねこ」のプログラム

小・中学校の授業や、多くのロボット・プログラミング教室で採用されているライントレースカーについて、その動作をコンピューター上だけで再現できるようなシミュレーションプログラムを作成し、公開しています。



プログラミングのれんしゅう


プログラミングとは、いくつかの基本的なコマンドを組み合わせて、新たな機能を作り出すことです。基本的なコマンドはどのように組み合わせても構わないのですが、特定の機能を持たせるようするためには組み合わせるためのルールがあります。初めてプログラミングをする人が、コマンドの組み合わせによって新たな機能を生み出すことが実感できれば、プログラミングが楽しくなるのではないかと思います。そこで、組み合わせの重要な部分だけをつくってもらうことで様々な機能が生まれることが実感できるようなプログラム集を作成しました。

プログラミングのれんしゅう

プログラミングのれんしゅう

私がプログラミングを教えるのであればこのようなものが欲しい、というつもりで作成したコンテンツを紹介しています。





備忘録


私がプログラムを書いた内容で、後のために残しておこうと思った内容を記載しています。(準備中)