(57)【要約】【課題】  端末から送信された複数のプログラミング命令を、内容に応じて自動的に分類する。【解決手段】  電子機器は、１以上の命令を含む１つの命令リストを取得し、取得した１つの命令リストの１以上の全ての命令にしたがって、ディスプレイの画面に設定された座標系内の位置および／又は軌跡を決定し、決定した座標系内の位置が、予め設定された１つの問題に応じて定まる座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した座標系内の軌跡が、予め設定された１つの問題に応じて定まる座標系内の特定の領域に交わるか否かを示す第２判定情報を決定し、決定した第１判定情報および／又は第２判定情報に基づいて、当該１つの命令リストが、予め設定された１つの問題に応じた正解であるか否かを判定し、第１判定情報、第２判定情報、および、正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、ディスプレイより出力する、制御部を備える。【選択図】図６
2019174797.tif 000002
【特許請求の範囲】
【請求項１】
１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストを取得し、
取得した１つの命令リストの前記１以上の全ての命令にしたがって、ディスプレイの画面に設定された座標系内の位置および／又は軌跡を決定し、
決定した前記座標系内の前記位置が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した前記座標系内の前記軌跡が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の領域に交わるか否かを示す第２判定情報を決定し、
決定した前記第１判定情報および／又は前記第２判定情報に基づいて、当該１つの命令リストが、前記予め設定された１つの問題に応じた正解であるか否かを判定し、
前記第１判定情報、前記第２判定情報、および、前記正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、ディスプレイより出力する、
制御部を備える、電子機器。
【請求項２】
複数の前記命令リストを複数の外部端末より取得し、
前記複数の命令リストの各々についての前記いずれかの情報を、当該各命令リストを出力した前記外部端末毎に区別可能に、前記ディスプレイより出力する、
請求項１に記載の電子機器。
【請求項３】
前記制御部は、
前記複数の命令リストの中での前記各命令リストの優劣を、当該各命令リストに含まれる命令の数と、当該各命令リストについて決定した前記座標系内の前記軌跡の長さとのうちの少なくともいずれかである第３判定情報と、前記各命令リストについての前記正誤判定情報と、に基づいて判定し、
前記各命令リストの優劣を示す情報を、前記いずれかの情報とともに、当該各命令リストを出力した前記外部端末毎に区別可能に、前記ディスプレイより出力する、
請求項２に記載の電子機器。
【請求項４】
前記制御部は、
前記各命令リストに含まれる１以上の全ての命令と、当該各命令リストについて決定した前記座標系内の前記軌跡と、当該各命令リストに含まれる命令の数と、当該各命令リストについて決定した前記座標系内の前記軌跡の長さとのうちの少なくともいずれかを、当該各命令リストについての前記いずれかの情報とともに、当該各命令リストを出力した前記外部端末毎に区別可能に、前記ディスプレイより出力する、
請求項３に記載の電子機器。
【請求項５】
前記制御部は、
前記複数の外部端末の各ディスプレイに表示された各二次元コードを、前記電子機器の撮像デバイスによって読み取らせ、
読み取った前記各二次元コードをデコードすることにより、前記複数の命令リストを、前記複数の外部端末より取得する、
請求項２乃至４のうち何れか１項に記載の電子機器。
【請求項６】
１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストの入力を、入力部より受け付け、
入力を受け付けた前記１つの命令リストの情報を、外部の電子機器によって読み取り可能に出力する制御部を備えた、
学習支援端末。
【請求項７】
前記外部の電子機器は、
前記学習支援端末より出力された前記情報を読み取ることにより、前記１つの命令リストを少なくとも取得し、
取得した前記１つの命令リストの前記１以上の全ての命令にしたがって、ディスプレイの画面に設定される座標系内の位置および／又は軌跡を決定し、
決定した前記座標系内の前記位置が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した前記座標系内の前記軌跡が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の領域に交わるか否かを示す第２判定情報を決定し、
決定した前記第１判定情報および／又は前記第２判定情報に基づいて、当該１つの命令リストが、前記予め設定された１つの問題に応じた正解であるか否かを判定し、
前記第１判定情報、前記第２判定情報、および、前記正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、ディスプレイより出力する、
制御部を備える、
請求項６に学習支援端末。
【請求項８】
学習支援端末と、電子機器と、二次元コード読取装置と、サーバ装置とを備える学習支援システムにより実行される学習支援方法であって、
前記学習支援端末の制御部は、
１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストの入力を、入力部より受け付け、
入力を受け付けた前記１つの命令リストの情報を少なくとも含む二次元コードを生成し、
生成した前記二次元コードを、外部の撮像装置によって読み取り可能に、ディスプレイより出力し、
二次元コード読取装置は、
前記ディスプレイより出力された前記二次元コードを、撮像装置により読み取って、デコードし、
デコードされた前記二次元コードの情報を、前記二次元コード読取装置の通信装置により送信し、
前記サーバ装置の制御部は、
前記二次元コード読取装置の前記通信装置により送信された前記二次元コードの情報を、前記サーバ装置の通信装置により受信し、
受信した前記二次元コードの情報をデコードして得られる、前記１以上の全ての命令にしたがって、ディスプレイの画面に設定される座標系内の位置および／又は軌跡を決定し、
決定した前記座標系内の前記位置が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した前記座標系内の前記軌跡が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の領域に交わるか否かを示す第２判定情報に基づいて、当該１つの命令リストが、前記予め設定された１つの問題に応じた正解であるか否かを判定し、
前記第１判定情報、前記第２判定情報、および、前記正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、前記サーバ装置の前記通信装置により送信し、
前記電子機器の制御部は、
前記いずれかの情報を、前記電子機器の通信装置により受信し、
前記いずれかの情報を、ディスプレイより出力する、
学習支援方法。
【請求項９】
電子機器のコンピュータによって、
１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストを取得させ、
取得した１つの命令リストの前記１以上の全ての命令にしたがって、ディスプレイの画面に設定された座標系内の位置および／又は軌跡を決定させ、
決定した前記座標系内の前記位置が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した前記座標系内の前記軌跡が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の領域に交わるか否かを示す第２判定情報を決定させ、
決定した前記第１判定情報および／又は前記第２判定情報に基づいて、当該１つの命令リストが、前記予め設定された１つの問題に応じた正解であるか否かを判定させ、
前記第１判定情報、前記第２判定情報、および、前記正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、前記ディスプレイより出力させる、
プログラム。
【請求項１０】
学習支援端末のコンピュータによって、
１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストの入力を、入力部より受け付けさせ、
入力を受け付けた前記１つの命令リストの情報を、外部の電子機器によって読み取り可能に出力させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラミング命令の正誤を判定し、その判定結果を出力することを可能にする電子機器、学習支援端末、学習支援方法、およびプログラムに関する。
【背景技術】
【０００２】
従来、グラフ関数電卓は、グラフの描画、連立方程式の計算、変数を用いた演算ができる電卓である。この種のグラフ関数電卓は、ディスプレイを有し、ディスプレイから、複数行のテキストや、計算結果のグラフを表示することができる。
【０００３】
このようにグラフ関数電卓は、ディスプレイを有していることから、近年では、プログラミング教育への利用も考えられている。
【０００４】
グラフ関数電卓をプログラミング教育のために使用することを想定した場合、グラフ関数電卓の用途として、例えば、アルゴリズムの学習を行うための機材としての使用が考えられる。この用途の場合、グラフ関数電卓は、モードを、計算を実行するための計算モードから、アルゴリズムを学習するためのモード（以下、「アルゴリズムモード」と称する）に切り替え可能な構成とすればよい。
【０００５】
アルゴリズムモードでは、例えば生徒であるユーザによって入力されたプログラミング命令（命令リスト）に応じて、ディスプレイ上に例えば点のようなアバターを表示させ、さらに移動させ、その軌跡で図形を描くことによって、例えば、地点Ａから地点Ｂへの経路を描画するための経路描画プログラミング命令や、例えば、二等辺三角形のような指定された図形を描画するための図形描画プログラミング命令の作成を通じて、ユーザ（生徒）は、アルゴリズムを学習することができる。
【０００６】
さらに、作成したプログラミング命令を、先生の電子機器（端末）へ送信することによって、先生は、各生徒の理解の程度を把握することが可能となる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開昭６３−１０３３５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、プログラミング命令は、穴埋め問題や、選択式問題とは異なり、正解が多数存在する。
【０００９】
したがって、アルゴリズムの教育では、先生は、単に正解、不正解を生徒に示すのみならず、正解であっても、異なる考えや、より効率的なプログラムといった様々な観点から生徒に説明する必要があり、また、不正解であっても、どうすれば正解に至ることができたのかをできるだけ個別に具体的に生徒に説明することが好ましい。
【００１０】
これらのことを、先生が、限られた授業時間内に実施できるようにするために、先生の電子機器は、各生徒から送信されたプログラミング命令を単に受信するだけではなく、先生の負担をできるだけ軽減できる支援機能を有することが望まれる。そのため、先生の電子機器は、各生徒から送信されたプログラミング命令を、正解または不正解に分類することに加えて、正解または不正解のなかでも、さらに内容に応じて詳細に分類できることが好ましい。
【００１１】
本発明はこのような事情に鑑みてなされたものであり、外部機器から送信された複数のプログラミング命令を、内容に応じて自動的に分類することが可能な電子機器、学習支援端末、学習支援方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る電子機器は、１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストを取得し、取得した１つの命令リストの１以上の全ての命令にしたがって、ディスプレイの画面に設定された座標系内の位置および／又は軌跡を決定し、決定した座標系内の位置が、予め設定された１つの問題に応じて定まる座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した座標系内の軌跡が、予め設定された１つの問題に応じて定まる座標系内の特定の領域に交わるか否かを示す第２判定情報を決定し、決定した第１判定情報および／又は第２判定情報に基づいて、当該１つの命令リストが、予め設定された１つの問題に応じた正解であるか否かを判定し、第１判定情報、第２判定情報、および、正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、ディスプレイより出力する制御部を備える。
【００１３】
本発明に係る学習支援端末は、１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストの入力を、入力部より受け付け、入力を受け付けた１つの命令リストの情報を、外部の電子機器によって読み取り可能に出力する制御部を備えている。
【００１４】
本発明に係る学習支援方法は、学習支援端末と、電子機器と、二次元コード読取装置と、サーバ装置とを備える学習支援システムにより実行される。この方法は、学習支援端末の制御部が、１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストの入力を、入力部より受け付け、入力を受け付けた１つの命令リストの情報を少なくとも含む二次元コードを生成し、生成した二次元コードを、外部の撮像装置によって読み取り可能に、ディスプレイより出力し、二次元コード読取装置が、ディスプレイより出力された二次元コードを、撮像装置により読み取って、デコードし、デコードされた二次元コードの情報を、二次元コード読取装置の通信装置により送信し、サーバ装置の制御部が、二次元コード読取装置の通信装置により送信された二次元コードの情報を、サーバ装置の通信装置により受信し、受信した二次元コードの情報をデコードして得られる、１以上の全ての命令にしたがって、ディスプレイの画面に設定される座標系内の位置および／又は軌跡を決定し、決定した座標系内の位置が、予め設定された１つの問題に応じて定まる座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した座標系内の軌跡が、予め設定された１つの問題に応じて定まる座標系内の特定の領域に交わるか否かを示す第２判定情報に基づいて、当該１つの命令リストが、予め設定された１つの問題に応じた正解であるか否かを判定し、第１判定情報、第２判定情報、および、正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、サーバ装置の通信装置により送信し、電子機器の制御部が、いずれかの情報を、電子機器の通信装置により受信し、いずれかの情報を、ディスプレイより出力する。
【００１５】
本発明に係るプログラムは、電子機器のコンピュータによって、１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストを取得させ、取得した１つの命令リストの１以上の全ての命令にしたがって、ディスプレイの画面に設定された座標系内の位置および／又は軌跡を決定させ、決定した座標系内の位置が、予め設定された１つの問題に応じて定まる座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した座標系内の軌跡が、予め設定された１つの問題に応じて定まる座標系内の特定の領域に交わるか否かを示す第２判定情報を決定させ、決定した第１判定情報および／又は第２判定情報に基づいて、当該１つの命令リストが、予め設定された１つの問題に応じた正解であるか否かを判定させ、第１判定情報、第２判定情報、および、正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、ディスプレイより出力させるプログラムである。
【００１６】
本発明に係るプログラムは、学習支援端末のコンピュータによって、１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストの入力を、入力部より受け付けさせ、入力を受け付けた１つの命令リストの情報を、外部の電子機器によって読み取り可能に出力させるプログラムである。
【発明の効果】
【００１７】
本発明の電子機器、学習支援端末、学習支援方法、およびプログラムによれば、外部機器から送信された複数のプログラミング命令を、内容に応じて自動的に分類することが可能となる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態に係る分類方法が適用される電子機器が適用されるネットワーク構成の一例を示す概念図である。
【図２】グラフ関数電卓の外観構成を示す正面図である。
【図３】グラフ関数電卓の電子回路の構成例を示すブロック図である。
【図４】経路描画プログラミング命令の一例である。
【図５】図４に示す経路描画プログラミング命令の実行により表示される描画結果と、描画結果の経路描画プログラミング命令との対応を示す図である。
【図６】電子機器の電子回路の構成例を示すブロック図である。
【図７】経路描画プログラミングにおいて考慮される地図情報の一例を示す２次元平面図である。
【図８】分類条件の一例を示す分類系統図である。
【図９】分類プログラムに基づく分類処理方法を示すフローチャートである。
【図１０】プログラミング命令およびその実行によって描画される経路の例を示す図である（正解の例）。
【図１１】プログラミング命令およびその実行によって描画される経路の例を示す図である（不正解の例）。
【図１２】プログラミング命令およびその実行によって描画される経路の例を示す図である（正解の例）。
【図１３】プログラミング命令およびその実行によって描画される経路の例を示す図である（不正解の例）。
【図１４】プログラミング命令およびその実行によって描画される経路の例を示す図である（正解の例）。
【図１５】表示プログラムによる表示例（図１０のプログラミング命令に対応）を示す図である。
【図１６】表示プログラムによる表示例（図１１のプログラミング命令に対応）を示す図である。
【図１７】表示プログラムによる表示例（図１４のプログラミング命令に対応）を示す図である。
【図１８】グラフ関数電卓側の動作例を示すフローチャートである。
【図１９】電子機器側の動作例を示すフローチャートである。
【図２０】サーバ装置の電子回路の構成例を示すブロック図である。
【図２１】電子機器およびサーバ装置の動作例を示すフローチャートである。
【発明を実施するための形態】
【００１９】
以下に、本発明の実施形態に係る分類方法が適用された電子機器を図面を参照して説明する。
【００２０】
図１は、本発明の実施形態に係る分類方法が適用される電子機器３が適用されるネットワーク構成１の一例を示す概念図である。
【００２１】
すなわち、先生によって使用される先生用端末の一例である電子機器３は、例えばインターネットのような通信ネットワーク２に接続される。また、通信ネットワーク２には、例えばグラフ関数電卓４（＃１〜＃ｎ）のような複数の生徒用端末（外部機器）も接続される。これによって、先生の電子機器３と、複数の生徒のグラフ関数電卓４（＃１〜＃ｎ）とは、通信ネットワーク２を介して、互いに通信可能となっている。なお、「ｎ」は、自然数である。
【００２２】
また、生徒用端末は、グラフ関数電卓４として構成されるのに限定されず、タブレット端末、パーソナルコンピュータ、スマートフォン、携帯電話機、タッチパネル式ＰＤＡ(personal digital assistants)、電子ブック、携帯ゲーム機等として構成することもできる。
【００２３】
図２は、グラフ関数電卓４の外観構成を示す正面図である。
【００２４】
グラフ関数電卓４は、その携帯性の必要から、生徒のようなユーザが片手で十分把持し片手で操作可能な小型サイズからなり、本体正面にはキー入力部１１およびディスプレイ１２が設けられる。
【００２５】
なお、タブレット端末のように、物理的なキー（ボタン）が実装されていない電子機器を生徒用端末として適用する場合、タブレット端末上に、グラフ関数電卓のキーと同様なソフトウェアキーボードを表示し、このソフトウェアキーボードに対するキー操作に応じて処理を実行する。
【００２６】
キー入力部１１には、数値、数式、およびプログラム命令を入力したり、計算やプログラムの実行を指示するための数値・演算記号キー群１１１、各種の関数を入力したりメモリ機能を立ち上げたりするための関数機能キー群１１２、計算モードやアルゴリズムモードといった各種動作モードのメニュー画面を表示させたり、これら動作モードの設定を指示するためのモード選択キー「ＭＯＤＥ」等を含む設定キー群１１３、ディスプレイ１２の下等端に沿って表示された各種の機能を１回のキー操作で立ち上げるためのファンクションキー群１１４、ディスプレイ１２に表示されたカーソルの移動操作やデータ項目の選択操作等を行うためのカーソルキー１１５が備えられる。
【００２７】
数値・演算記号キー群１１１としては、［０］〜［９］（数値）キー、［＋］［−］［×］［÷］（四則記号）キー、［ＥＸＥ］（実行）キー、［ＡＣ］（クリア）キー等が配列される。
【００２８】
関数機能キー群１１２としては、［ｓｉｎ］（サイン）キー、［ｃｏｓ］（コサイン）キー、［ｔａｎ］（タンジェント）キー等が配列される。
【００２９】
設定キー群１１３としては、モード選択キー「ＭＯＤＥ」の他に、［ＭＥＮＵ］（メニュー）キー、［ＳＨＩＦＴ］（シフト）キー等が配列される。
【００３０】
ファンクションキー群１１４としては、［Ｆ１］キー〜［Ｆ６］キーが配列される。
【００３１】
なお、数値・演算記号キー群１１１、関数機能キー群１１２、設定キー群１１３、ファンクションキー群１１４のキーは、［ＳＨＩＦＴ］キーが操作された後に続けて操作されることで、そのキートップに記載されたキー機能ではなく、そのキーの上方に記載されたキーとして機能できるようになっている。例えば、［ＳＨＩＦＴ］キー操作後に［ＡＣ］キーが操作（以下、［ＳＨＩＦＴ］＋［ＡＣ］キーと記す。）されると［ＯＦＦ］（電源オフ）キーとなる。［ＳＨＩＦＴ］＋［ＭＥＮＵ］キーは［ＳＥＴ  ＵＰ］（セットアップ）キー、［ＳＨＩＦＴ］＋［Ｆ３］キーは［Ｖ−Ｗｉｎｄｏｗ］（ビューウインドウ：描画領域設定画面の表示を指示する）キーとなる。
【００３２】
ディスプレイ１２は、ドットマトリクス型の液晶表示ユニットからなる。なお、グラフ関数電卓４がタブレット端末である場合、ディスプレイ１２は、タッチパネルを重ねて設けた液晶表示ユニットからなる。
【００３３】
図３は、グラフ関数電卓４の電子回路の構成例を示すブロック図である。
【００３４】
グラフ関数電卓４の電子回路は、キー入力部１１およびディスプレイ１２に加えて、コンピュータであるＣＰＵ２１、メモリ２２、記録媒体読取部２４、および通信部２５を備えている。
【００３５】
ＣＰＵ２１は、メモリ２２に記憶されている描画プログラム２２ａに従い回路各部の動作を制御し、キー入力部１１からのキー入力信号に応じた各種の処理を実行する。描画プログラム２２ａは、メモリ２２に予め記憶されていてもよいし、あるいはメモリカード等の外部記録媒体２３から記録媒体読取部２４を介してメモリ２２に読み込まれて記憶されたものであってもよい。描画プログラム２２ａは、ユーザ（生徒）がキー入力部１１の操作によって書き換えできないようになっている。
【００３６】
メモリ２２には、このようなユーザ書き換え不可能な情報の他に、ユーザ（生徒）が書き換え可能なデータを記憶するエリアとして、キー入力部１１によりキー入力されたキーコードのデータが順次入力され、これにより構成される数式のデータや表データ、グラフデータ等が記憶されるエリアである書込可能データエリア２２ｂが確保されている。
【００３７】
このように構成されたグラフ関数電卓４は、ＣＰＵ２１が描画プログラム２２ａに記述された命令に従い回路各部の動作を制御し、ソフトウェアとハードウェアとが協働して動作することにより、以下に説明するように、描画機能を実現する。
【００３８】
すなわち、描画プログラム２２ａは、アルゴリズムモードにおいて、キー入力部１１を介して入力されたプログラミング命令に応じて、ディスプレイ１２から、点のようなアバター（表示体）Ａｖを表示させ、さらに移動させ、その軌跡で図形を描く経路描画プログラミングや、例えば、二等辺三角形のような図形を描画する図形描画プログラミングを含む。
【００３９】
グラフ関数電卓４のアルゴリズムモードへの設定は、設定キー群１１３における「ＭＯＤＥ」キーを押圧することによってなされる。すなわち、グラフ関数電卓４は、計算モードやアルゴリズムモードといった各種動作モードを備えており、「ＭＯＤＥ」キーが押圧されると、計算モードとアルゴリズムモードとが交互に切り替わるようになっている。また、グラフ関数電卓４は、これ以外のモードを備えていてもよく、３つ以上のモードを備えている場合であっても、「ＭＯＤＥ」キーを押圧する毎に、モードが順次切り替わるようにすることによって対応可能である。
【００４０】
モードがアルゴリズムモードに設定されると、描画プログラム２２ａは、数値・演算記号キー群１１１から、ディスプレイ１２に表示されるアバターＡｖの表示位置を、ある移動量で移動させたり、ある角度で回転させたりするためのプログラミング命令を受け付けることが可能な状態となる。
【００４１】
これに応じて、ユーザ（生徒）が、数値・演算記号キー群１１１を操作することによって、プログラミング命令を入力することができる。
【００４２】
図４は、経路描画プログラミング命令の一例である。ユーザは、キー入力部１１より、行毎に１つのコマンド（命令）を入力することで、１以上のコマンドを含むプログラミング命令を作成できる。本実施形態では、ＣＰＵ３１は、プログラミング命令を実行することにより、ディスプレイ１２の画面に設定された座標系内の「座標」および「向き」を決定し、決定した「座標」および「向き」にしたがって、ディスプレイ１２を制御し、その画面上にアバターＡｖを表示させる。「向き」の絶対角度は、Ｘ軸に並行で正の向きを０°、時計と反対回りを正の向きとする。なお、「座標」および「向き」の各初期値として、原点Ｏおよび０°が予め設定されている。
【００４３】
図５（ａ）は、図４に示す経路描画プログラミング命令の実行により、ディスプレイ１２の画面に表示される描画結果（軌跡）を示す図である。図５（ａ）中の白抜き三角が、アバターＡｖであり、三角形の一つの頂点がアバターＡｖの向き（右向き）を示している。
【００４４】
ここで、各プログラミング命令は、以下のような命令を含む場合がある。移動系の命令には「Ｍｏｖｅ」および「Ｇｏｔｏ」が含まれる。「Ｍｏｖｅ（長さ）」は、実行時のアバターＡｖの向きに沿って、引数で指定した長さ分、アバターＡｖを移動させる命令である。「Ｇｏｔｏ（Ｘ座標、Ｙ座標）」は、実行時のアバターＡｖの向きにかかわらず、引数で指定された座標へ、アバターＡｖを移動させる命令である。
【００４５】
回転系の命令には「Ｔｕｒｎ」および「Ｄｉｒｅｃｔｉｏｎ」が含まれる。「Ｔｕｒｎ（相対角度）」は、実行時のアバターＡｖの座標を維持したまま、実行時のアバターＡｖの向きを基準として、引数で指定された相対角度分、アバターＡｖの向きを変更する命令である。「Ｄｉｒｅｃｔｉｏｎ（絶対角度）」実行時のアバターＡｖの座標を維持したまま、引数で指定された絶対角度の向きへ、アバターＡｖの向きを変更する命令である。ここでは説明を省略するが、上記以外の命令がプログラミング命令に含まれる場合がある。
【００４６】
図５（ｂ）は、図５（ａ）に示す描画結果の、経路描画プログラミング命令との対応を示す図である。
【００４７】
図４に示す経路描画プログラミング命令のうちの第１行の命令「Ｍｏｖｅ（３０）」に従って、図中右方向へ「３０」だけアバターＡｖを移動させるとともに、その移動軌跡を座標系に描画する。次に、第２行の命令「Ｔｕｒｎ（＋９０）」に従って、図中上方向へ「９０°」だけアバターＡｖの向きを回転させる。最後に、第３行の命令「Ｍｏｖｅ（６０）」に従って、図中上方向へ「６０」だけアバターＡｖを移動させるとともに、その移動軌跡を座標系に描画する。以上のように、図４に示す経路描画プログラミング命令に従って、図５（ａ）の描画結果が得られる。
【００４８】
通信部２５は、ユーザ（生徒）によって入力された図４に示すようなプログラミング命令と、当該プログラミング命令に含まれるすべての命令を実行したときの座標（到達地点Ｃの座標）を、通信ネットワーク２を介して、電子機器３へ向けて送信する。
【００４９】
図６は、先生によって使用される電子機器３の電子回路の構成例を示すブロック図である。
【００５０】
電子機器３は、コンピュータであるＣＰＵ３１、通信部３２、記録媒体読取部３４、ディスプレイ３５、キー入力部３６、メモリ３７、および分類条件記憶部３８を備えている。
【００５１】
なお、図６では、内蔵されたキー入力部３６が示されているが、キー入力のための機能は、必ずしも内蔵されたキー入力部３６に限定されるものではなく、外部キーボード（図示せず）を使用して実現することも可能である。この場合、電子機器３は、キー入力部３６の代わりに、外部インターフェース（図示せず）を備え、この外部インターフェースに、外部キーボードを接続する。
【００５２】
電子機器３は、例えば、タブレット端末、パーソナルコンピュータ、スマートフォン、携帯電話機、タッチパネル式ＰＤＡ(personal digital assistants)、電子ブック、携帯ゲーム機等によって構成することができる。
【００５３】
通信部３２は、通信ネットワーク２を介して複数のグラフ関数電卓４側と通信することが可能であり、各グラフ関数電卓４から送信された、あるいは、グラフ関数電卓４によって生成されたＱＲコード（登録商標）を読み取ったスマートフォンやタブレットによって代理送信されたプログラミング命令を、通信ネットワーク２を介して受信する。
【００５４】
ＣＰＵ３１は、メモリ３７に記憶されている分類プログラム３７ａおよび表示プログラム３７ｂに従い回路各部の動作を制御する。
【００５５】
分類プログラム３７ａおよび表示プログラム３７ｂは、メモリ３７に予め記憶されていてもよいし、あるいはメモリカード等の外部記録媒体３３から記録媒体読取部３４を介してメモリ３７に読み込まれて記憶されたものであってもよい。分類プログラム３７ａおよび表示プログラム３７ｂは、ユーザ（先生）がキー入力部３６の操作によって書き換えできないようになっている。
【００５６】
メモリ３７には、このようなユーザ書き換え不可能な情報の他に、例えば、分類プログラム３７ａや表示プログラム３７ｂによって生成された結果や中間データ等が記憶される、書き換え可能なエリアである書込可能データエリア３７ｃが確保されている。
【００５７】
分類条件記憶部３８は、通信部３２によって受信された各プログラミング命令を分類するための分類条件を記憶している。この分類条件は、先生によって予め設定され、分類条件記憶部３８に記憶されており、分類プログラム３７ａによるプログラミング命令の分類の際に使用される。
【００５８】
このように構成された電子機器３は、ＣＰＵ３１が分類プログラム３７ａおよび表示プログラム３７ｂに記述された命令に従い回路各部の動作を制御し、ソフトウェアとハードウェアとが協働して動作することにより、以下に説明するような分類機能および表示機能を実現する。
【００５９】
分類プログラム３７ａは、回路各部の動作を制御することによって、通信部３２によって受信された各プログラミング命令を、分類条件記憶部３８に記憶された分類条件に基づいて分類する。
【００６０】
以下に、分類条件の例について説明する。
【００６１】
図７は、経路描画プログラミングにおいて考慮される地図情報（予め設定された１つの問題）の一例を示す２次元平面図である。地点Ａは、ディスプレイ１２の画面に設定された座標系の原点Ｏ（０、０）であり、地点Ｂは、同座標系内の座標点（３０、６０）である。また、障害物ａは、４つの座標点（０、４０）、（１０、４０）、（１０、５０）および（０、５０）で囲まれた矩形領域（境界およびその内部領域）であり、障害物ｂは、４つの座標点（２５、５）、（３０、５）、（３０、２５）および（２５、２５）で囲まれた矩形領域（境界およびその内部領域）である。地点Ｂおよび障害物ａ、ｂの各位置を示す座標値が、上記の地図情報に対して定まる少なくとも１つの正解である。
【００６２】
生徒は、各々が操作するグラフ関数電卓４（＃１〜＃ｎ）を用いて、図７に示す地図情報に対する解答として、地点Ａから地点Ｂまで、障害物ａおよび障害物ｂを回避しながら、即ち、障害物ａおよび障害物ｂと各々みなされる領域（特定の領域）を通過せずに、アバターＡｖを移動させる経路描画のためのプログラミング命令を作成するものとする。
【００６３】
この場合、図８に示すように、（１）アバターＡｖが、障害物ａ、ｂの何れにも遮られることなく、即ち、各障害物ａ，ｂを特定する領域を通過せずに、座標系内の地点Ａから地点Ｂへ到達できるようなプログラミング命令を「正解」、（２）そうでない場合、即ち、アバターＡｖが、座標系内の地点Ａから地点Ｂへ到達できなかったり、座標系内の各障害物ａ，ｂを特定する領域を通過したりするようなプログラミング命令を「不正解」と分類することができる。
【００６４】
後述するように、電子機器３は、複数のグラフ関数電卓４（＃１〜＃ｎ）より出力された複数のプログラミング命令を取得する。（１）「正解」と分類されたプログラミング命令が少なくとも１つ存在する場合、図８に示すように、その少なくとも１つのプログラミング命令の中で、（１−１）アバターＡｖが、地点Ａから地点Ｂへ最短移動距離で到達できるものを「最短移動距離」、（１−２）アバターＡｖが、地点Ａから地点Ｂへ最も少ない数の命令によって到達できるものを「最少の命令数」、（１−３）前２項の条件に合致しないものを「その他」と、さらに、細分類することができる。
【００６５】
また、上記（２）「不正解」と分類されたプログラミング命令は、さらに、次のように細分類できる。つまり、図８に示すように、（２−１）アバターＡｖが、地点Ａから地点Ｂへ到達できるものの、障害物ａを特定する領域を通過するもの（「障害物ａが存在しなければ到達」）、（２−２）アバターＡｖが、地点Ａから地点Ｂへ到達できるものの、障害物ｂを特定する領域を通過するもの（「障害物ｂが存在しなければ到達」）、（２−３）アバターＡｖが、障害物ａ、ｂを特定する領域を通過しないものの、地点Ａから地点Ｂへ到達できないもの（「到達地点が地点Ｂではない」）、（２−４）前３項の条件に合致しないものを「その他」と、さらに、細分類することができる。
【００６６】
電子機器３のＣＰＵ３１は、複数のグラフ関数電卓４（＃１〜＃ｎ）を用いて作成された複数のプログラミング命令を、通信部３２や外部記録媒体３３が装着された記録媒体読取部３４を介して取得する。以下では、取得した複数のプログラミング命令を、ＣＰＵ３１が分類プログラム３７ａにしたがって分類する方法について、図１０乃至図１４を参照しながら説明する。まずは、図８、図９、図１０を参照しながら、各プログラミング命令に含まれる１以上の命令が実行される際の処理について説明し、図１１乃至図１４については、図１０と同様の処理が行われる場合、その説明を適宜省略する。
【００６７】
ＣＰＵ３１は、前述の地図情報、即ち、地点Ａ、Ｂおよび障害物ａ、ｂの位置を示す座標値の情報を取得する（ステップＳ１０１）。地図情報は、電子機器３のキー入力部３６への操作により入力されてもよいし、通信部３２を介して通信ネットワーク２等の外部より入力されてもよいし、記録媒体読取部３４を介して外部記録媒体３３より取り込んでもよい。
【００６８】
ＣＰＵ３１は、複数のグラフ関数電卓４より送信された、複数のプログラミング命令および複数の到達地点Ｃを取得する（ステップＳ１０２）。ＣＰＵ３１は、取得した複数のプログラミング命令の各々に含まれる全ての命令を順次実行し（ステップＳ１０３）、命令を実行する毎に、各命令実行後のアバターＡｖの座標および軌跡の長さの合計を算出し、メモリ３７の書込可能データエリア３７ｃへ記憶させる（ステップＳ１０４）。
【００６９】
ステップＳ１０４において、ＣＰＵ３１は、前述の移動系の命令（「Ｍｏｖｅ」または「Ｇｏｔｏ」）を実行すると、移動先の座標（当該移動系の命令実行直後の座標）を算出し、算出した移動先の座標値をメモリ３７の書込可能データエリア３７ｃへ記憶する。座標系内の移動元の座標（当該移動系の命令実行直前の座標）と、移動先の座標を結ぶ線分が、アバターＡｖの軌跡の少なくとも一部となる。ＣＰＵ３１は、当該線分の長さを算出し、メモリ３７の書込可能データエリア３７ｃへ記憶されている線分の長さの合計に加算し、加算後の数値を同じメモリエリアへ上書きする。前述の移動系の命令以外の命令を実行した場合には、アバターＡｖの座標および軌跡の長さの合計は変わらないので、メモリ３７の書込可能データエリア３７ｃに記憶されている各値は更新しなくてもよい。このように、各命令を実行後、メモリ３７の書込可能データエリア３７ｃには、その時点での、到達地点の座標値および軌跡の長さの合計が記憶されていることとなる。
【００７０】
具体的に、前述の図１０（ａ）に示すプログラミング命令では、第１行の命令「Ｍｏｖｅ（２０）」に従って、スタート地点である原点Ｏ（０、０）と座標点（２０、０）を結ぶ線分が、当該プログラミング命令に従って得られるアバターＡｖの軌跡の少なくとも一部（図１０（ｂ）の第１の軌跡Ｌａ）となる。この線分を特定する情報として、ＣＰＵ３１は、数式「ｙ＝０」および数値範囲「０≦ｘ≦２０」を算出するとともに、当該線分の長さ「２０」を算出する。ＣＰＵ３１は、さらに、今回算出した線分の長さ「２０」を、その時点でメモリ３７の書込可能データエリア３７ｃへ記憶されている値（線分の長さの合計の初期値）「０」へ加算して、軌跡の長さの合計「２０」を算出し、メモリ３７の書込可能データエリア３７ｃへ上書きして記憶させる。また、ＣＰＵ３１は、当該プログラミング命令に含まれる命令の数（第３判定情報）（初期値「０」）に「１」を加算して、メモリ３７の書込可能データエリア３７ｃへ記憶させる。
【００７１】
第２行の命令「Ｔｕｒｎ（＋９０）」に従って、ＣＰＵ３１は、アバターＡｖの向きが上向きになるように、ディスプレイ１２の画面を表示更新させる。アバターＡｖの座標は変化しないので、その時点でメモリ３７の書込可能データエリア３７ｃへ記憶されている座標値および線分の長さの合計は保持される。ＣＰＵ３１は、当該プログラミング命令に含まれる命令の数を示す数値として「２」を、メモリ３７の書込可能データエリア３７ｃへ上書きして記憶させる。
【００７２】
第３行の命令「Ｍｏｖｅ（６０）」に従って、２つの座標点（２０、０）と（２０、６０）を結ぶ線分が、当該プログラミング命令に従って得られるアバターＡｖの軌跡の別の少なくとも一部（図１０（ｂ）の第２の軌跡Ｌｂ）となる。この線分を特定する情報として、ＣＰＵ３１は、数式「ｘ＝２０」および数値範囲「０≦ｙ≦６０」を算出するとともに、当該線分の長さ「６０」を算出する。ＣＰＵ３１は、さらに、今回算出した線分の長さ「６０」を、その時点でメモリ３７の書込可能データエリア３７ｃへ記憶されている値「２０」へ加算して、軌跡の長さの合計「８０」を算出し、メモリ３７の書込可能データエリア３７ｃへ上書きして記憶させる。また、ＣＰＵ３１は、当該プログラミング命令に含まれる命令の数を示す数値として「３」を、メモリ３７の書込可能データエリア３７ｃへ上書きして記憶させる。
【００７３】
第４行の命令「Ｔｕｒｎ（−９０）」に従って、ＣＰＵ３１は、アバターＡｖの向きが右向きになるように、ディスプレイ１２の画面を表示更新させる。アバターＡｖの座標は変化しないので、その時点でメモリ３７の書込可能データエリア３７ｃへ記憶されている座標値および線分の長さの合計は保持される。ＣＰＵ３１は、当該プログラミング命令に含まれる命令の数を示す数値として「４」を、メモリ３７の書込可能データエリア３７ｃへ上書きして記憶させる。
【００７４】
第５行の命令「Ｍｏｖｅ（１０）」に従って、２つの座標点（２０、６０）と（３０、６０）を結ぶ線分が、当該プログラミング命令に従って得られるアバターＡｖの軌跡のさらに別の少なくとも一部（図１０（ｃ）の第３の軌跡Ｌｃ）となる。この線分を特定する情報として、ＣＰＵ３１は、数式「ｙ＝６０」および数値範囲「２０≦ｘ≦３０」を算出する。ＣＰＵ３１は、さらに、今回算出した線分の長さ「１０」を、その時点でメモリ３７の書込可能データエリア３７ｃへ記憶されている値「８０」へ加算して、軌跡の長さの合計「９０」を算出し、メモリ３７の書込可能データエリア３７ｃへ上書きして記憶させる。また、ＣＰＵ３１は、当該プログラミング命令に含まれる命令の数を示す数値として「５」を、メモリ３７の書込可能データエリア３７ｃへ上書きして記憶させる。
【００７５】
以上のように、図１０（ａ）に示すプログラミング命令に含まれる全ての命令の実行が完了する。プログラミング命令に含まれる全ての命令の実行が完了すると（ステップＳ１０５：Ｙｅｓ）、ＣＰＵ３１は、その時点でのアバターＡｖの座標値（３０、６０）および軌跡全体の長さ（第３判定情報）「９０」を、メモリ３７の書込可能データエリア３７ｃより取得する（ステップＳ１０６）。
【００７６】
プログラミング命令に含まれる全ての命令の実行が完了すると、ＣＰＵ３１は、さらに、上述の各処理において、メモリ３７の書込可能データエリア３７ｃへ記憶させた各データに基づいて、当該プログラミング命令の正誤判定処理を実行する。つまり、上述の各処理により特定されたアバターＡｖの到達地点Ｃの座標が地点Ｂの座標と一致しているか否かを判定し、その判定結果を示す情報（第１判定情報）を取得する。また、上述の各処理により特定されたアバターＡｖの軌跡に含まれる１以上の線分の各々が、障害物ａ，ｂとみなされる各領域と交わるか否かを判定し、その判定結果を示す情報（第２判定情報）を取得する。なお、プログラミング命令に含まれる全ての命令の実行を完了できなかった場合や、プログラミング命令を実行中に何らかのエラーが生じたと判定した場合（ステップＳ１０７：Ｙｅｓ）、当該プログラミング命令を、（２−４）「その他」（ステップＳ１１０）へ分類し、さらに（２）「不正解」（ステップＳ１１３）へ分類する。
【００７７】
前述の図１０（ａ）に示すプログラミング命令では、当該プログラミング命令に含まれる全ての命令の実行を完了し、かつ、プログラミング命令を実行中に何らかのエラーも生じなかったと判定してから（ステップＳ１０７：Ｎｏ）、さらに、特定された到達地点Ｃの座標（３０、６０）が、地点Ｂの座標（３０、６０）と一致しているか否かを判定する（ステップＳ１０８）。ＣＰＵ３１は、両者が一致していると判定し（ステップＳ１０８：Ｙｅｓ）、その判定結果を示す情報（第１判定情報）を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。
【００７８】
さらに、ＣＰＵ３１は、上述の各処理により特定されたアバターＡｖの軌跡の少なくとも一部である第１の軌跡Ｌａが、障害物ａとみなされる領域（４つの座標点（０、４０）、（１０、４０）、（１０、５０）および（０、５０）で囲まれた矩形領域）または障害物ｂとみなされる領域（４つの座標点（２５、５）、（３０、５）、（３０、２５）および（２５、２５）で囲まれた矩形領域）と交わるか否かを判定する（ステップＳ１０９）。その判定の際、特定の平面領域と線分との交差有無を判定するための任意の既知の手法を用いてよい。
【００７９】
交差有無の判定方法として、この例に限るものではないが、例えば、ＣＰＵ３１は、上述の各軌跡Ｌａ，Ｌｂ，Ｌｃを特定する情報と同様、障害物ａとみなされる矩形領域の４辺である４つの線分を特定する情報として、各線分を特定する直線を表す数式および数値範囲を算出する。その上で、各線分を特定する直線と第１の軌跡Ｌａを特定する直線が、各算出された数値範囲内において解を有する場合には、第１の軌跡Ｌａが、障害物ａとみなされる矩形領域と交わると判定する。また、各線分を特定する直線と第１の軌跡Ｌａを特定する直線が、各算出された数値範囲内において解を有さない場合には、第１の軌跡Ｌａが、障害物ａとみなされる矩形領域と交わらないと判定する。さらに、アバターＡｖの軌跡に含まれる全ての軌跡（図１０の例では、第１乃至第３の軌跡Ｌａ〜Ｌｃ）について、障害物ａとみなされる矩形領域と交わらないと判定した場合、当該軌跡は、障害物ａと交わらないと判定し、その判定結果を示す情報（第２判定情報）を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。
【００８０】
一方、アバターＡｖの軌跡に含まれるいずれかの軌跡（図１０の例では、第１乃至第３の軌跡Ｌａ〜Ｌｃのいずれか）について、障害物ａとみなされる矩形領域と交わると判定した場合、当該軌跡は、障害物ａと交わると判定し、その判定結果を示す情報（第２判定情報）を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。以上では障害物ａについて説明したが、障害物ｂについても同様の判定方法が用いられる。なお、アバターＡｖの軌跡が障害物ａ，ｂのいずれかと交わると判定された場合、第２判定情報は、いずれの障害物と交わるのかを示す情報も含むものとする。
【００８１】
次いで、ＣＰＵ３１は、上記の第１判定情報および第２判定情報にもとづいて、判定対象のプログラミング命令が、予め設定された１つの問題に応じた正解であるか否かを判定する。図１０（ａ）に示すプログラミング命令について、ＣＰＵ３１は、第１判定情報が「一致」（ステップＳ１０８：Ｙｅｓ）、第２判定情報が「交わらない」（ステップＳ１０９：Ｎｏ）であるので、当該プログラミング命令は（１）「正解」（ステップＳ１１４）であると判定し、その判定結果を示す情報（正誤判定情報）を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。
【００８２】
図１１（ａ）乃至図１４（ａ）に示す各プログラミング命令についても、上述と同様の処理が実行される（ステップＳ１１５：Ｎｏ、ステップＳ１０２）。ＣＰＵ３１は、図１１（ａ）に示すプログラミング命令にしたがって算出される軌跡全体の長さを「９０」、当該プログラミング命令に含まれる命令の数を「５」と算出し、各数値を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。また、ＣＰＵ３１は、図１１（ａ）に示すプログラミング命令について、ＣＰＵ３１は、第１判定情報が「不一致」（ステップＳ１０８：Ｎｏ）を示しているので、当該プログラミング命令は（２−３）「到達地点が地点Ｂではない」（ステップＳ１１１）、および（２）「不正解」（ステップＳ１１３）であると判定し、その判定結果を示す情報を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。
【００８３】
ＣＰＵ３１は、図１２（ａ）に示すプログラミング命令にしたがって算出される軌跡全体の長さを「９０」、当該プログラミング命令に含まれる命令の数を「８」と算出し、各数値を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。また、ＣＰＵ３１は、図１２（ａ）に示すプログラミング命令は、第１判定情報が「一致」（ステップＳ１０８：Ｙｅｓ）、第２判定情報が「交わらない」（ステップＳ１０９：Ｎｏ）を示しているので、当該プログラミング命令は（１）「正解」（ステップＳ１１４）であると判定し、その判定結果を示す情報を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。
【００８４】
ＣＰＵ３１は、図１３（ａ）に示すプログラミング命令にしたがって算出される軌跡全体の長さを「９０」、当該プログラミング命令に含まれる命令の数を「３」と算出し、各数値を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。また、ＣＰＵ３１は、図１３（ａ）に示すプログラミング命令は、第１判定情報が「一致」（ステップＳ１０８：Ｙｅｓ）、第２判定情報が「障害物ｂと交わる」（ステップＳ１０９：Ｙｅｓ）を示しているので、当該プログラミング命令は（２−２）「障害物ｂが存在しなければ到達」（ステップＳ１１２）および（２）「不正解」（ステップＳ１１３）であると判定し、その判定結果を示す情報を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。
【００８５】
ＣＰＵ３１は、図１４（ａ）に示すプログラミング命令にしたがって算出される軌跡全体の長さを「３０√５」、当該プログラミング命令に含まれる命令の数を「２」と算出し、各数値を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。また、ＣＰＵ３１は、図１４（ａ）に示すプログラミング命令は、第１判定情報が「一致」（ステップＳ１０８：Ｙｅｓ、第２判定情報が「交わらない」（ステップＳ１０９：Ｎｏ）を示しているので、当該プログラミング命令は（１）「正解」（ステップＳ１１４）であると判定し、その判定結果を示す情報を、メモリ３７の書込可能データエリア３７ｃへ記憶させる。
【００８６】
取得済みの複数の全てのプログラミング命令を実行完了したと判定すると（ステップＳ１１５：Ｙｅｓ）、ＣＰＵ３１は、各プログラミング命令について、上記の正誤判定情報および第３判定情報にもとづいて、取得済みの複数の全ての複数のプログラミング命令を互いに比較する比較処理を実行する（ステップＳ１１６〜ステップＳ１２２）。ＣＰＵ３１は、判定対象となった複数のプログラミング命令の中で、正誤判定情報が「正解」を示すプログラミング命令について、各プログラミング命令にしたがって算出される軌跡全体の長さ（移動距離）が最も短いプログラミング命令、および、プログラミング命令に含まれる命令の数が最も少ないプログラミング命令を、各々特定し、その特定結果を示す情報を、該当するプログラミング命令に関連付けて、メモリ３７の書込可能データエリア３７ｃへ記憶させる。
【００８７】
ＣＰＵ３１は、正誤判定情報が「正解」を示している、図１０（ａ）、図１２（ａ）および図１４（ａ）の各プログラミング命令に含まれる命令の数を比較し、図１４（ａ）のプログラミング命令による軌跡全体の長さは、その中で最も短い「３０√５」であると判定する（ステップＳ１１７：Ｙｅｓ、ステップＳ１１８）。ＣＰＵ３１は、正誤判定情報が「正解」を示している、図１０（ａ）、図１２（ａ）および図１４（ａ）の各プログラミング命令に含まれる命令の数を比較し、図１４（ａ）のプログラミング命令には、その中で最も少ない「２つ」しか命令が含まれていないと判定する（ステップＳ１１９：Ｙｅｓ、ステップＳ１２０）。
【００８８】
さらに、ＣＰＵ３１は、判定対象となる複数のプログラミング命令の中で、（１−１）および（１−２）の両方に分類されたプログラミング命令に対して、「ベストアンサー」であることを示す識別情報をさらに付加して、メモリ３７の書込可能データエリア３７ｃへ記憶させる。また、ＣＰＵ３１は、判定対象となる複数のプログラミング命令の中に、（１−１）に分類されたプログラミング命令のみが存在し、（１−２）に分類されたプログラミング命令が存在しない場合や、（１−２）に分類されたプログラミング命令のみが存在し、（１−１）に分類されたプログラミング命令が存在しない場合に、該当するプログラミング命令に対して、「ベストアンサー」であることを示す識別情報をさらに付加して、メモリ３７の書込可能データエリア３７ｃへ記憶させてもよい。
【００８９】
ＣＰＵ３１は、分類プログラム３７ａにしたがって、以上の処理を実行することにより、図１０（ａ）に示すプログラミング命令を、（１）「正解」および（１−３）「その他」に分類する（ステップＳ１２１）。
【００９０】
同様に、図１１（ａ）に示すプログラミング命令を、（２）「不正解」および（２−３）「到達地点が地点Ｂではない」に分類する。図１２（ａ）に示すプログラミング命令を、（１）「正解」および（１−３）「その他」に分類する。図１３（ａ）に示すプログラミング命令を、（２）「不正解」および（２−３）「障害物ｂが存在しなければ到達」に分類する。図１４（ａ）に示すプログラミング命令を、（１）「正解」、（１−１）「最短移動距離」、（１−２）「最少の命令数」、および、「ベストアンサー」に分類す。
【００９１】
表示プログラム３７ｂは、例えばキー入力部３６を介してなされるユーザ（先生）からの要求に応じて、分類プログラム３７ａによって分類された結果を、適宜、補足情報を付加したり、色分けを使用しながら、ディスプレイ３５から表示させる（ステップＳ１２２）。
【００９２】
表示プログラム３７ｂによる表示例を、図１５〜図１７に示す。
【００９３】
図１５は、（１）「正解」および（１−３）「その他」に分類された図１０（ａ）に示すプログラミング命令と、それに対応する図１０（ｂ）に示す経路軌跡とに加えて、補足情報として、正解表示と、図１０（ａ）に示すプログラミング命令に含まれる命令の数と、該プログラミング命令による軌跡全体の長さとをあわせて表示した例である。なお、正解表示の代わりに、あるいは、正解表示に加えて、正解を示す所定の表示形態、例えば青色で経路軌跡を表示してもよい。
【００９４】
図１６は、（２）「不正解」および（２−３）「到達地点が地点Ｂではない」に分類された図１１（ａ）に示すプログラミング命令と、それに対応する図１１（ｂ）に示す経路軌跡とに加えて、補足情報として、不正解表示と、図１１（ａ）に示すプログラミング命令に含まれる命令の数と、該プログラミング命令による軌跡全体の長さとをあわせて表示した例である。なお、不正解表示の代わりに、あるいは、不正解表示に加えて、不正解を示す所定の表示形態、例えば赤色で経路軌跡を表示してもよい。
【００９５】
図１７は、（１）「正解」（１−１）「最短移動距離」、および、（１−２）「最少の命令数」に分類された図１４（ａ）に示すプログラミング命令と、それに対応する図１４（ｂ）に示す経路軌跡とに加えて、補足情報として、正解表示と、命令の数と、軌跡全体の長さとに加えて、このプログラミング命令が（１−１）最短移動距離、かつ（１−２）最少数のコマンドで実現できるベストアンサーであることを示す、「ベストアンサー」表示とをあわせて表示した例である。なお、「ベストアンサー」表示の代わりに、あるいは、「ベストアンサー」表示に加えて、「ベストアンサー」を示すために、所定の表示形態、経路軌跡を、例えば、青色の太線で表示したり、表示開始直後の数秒間のみ点滅して表示させるといった方法で、表示してもよい。
【００９６】
なお、経路軌跡が同一であっても、プログラミング命令の内容が異なる場合もある。そのような場合、経路軌跡が同一なプログラミング命令を同時にディスプレイ３５から表示し、両プログラミング命令における異なる箇所を例えば色分け表示すること等により相違点を強調して表示するようにしてもよい。
【００９７】
次に、以上のように構成した本発明の実施形態に係る分類方法が適用された電子機器３の動作について説明する。
【００９８】
ここでは、先生が、プログラミングの授業において、生徒に対して、図７に示されるように、地点Ａから地点Ｂまで、障害物である障害物ａおよび障害物ｂを回避しながらアバターＡｖを移動させる経路描画プログラミング命令を作成するように指示したと仮定し、まず、生徒側、すなわち、グラフ関数電卓４側の動作について、図１８に示すフローチャートを用いて説明する。
【００９９】
上記の様な先生からの指示に対して、生徒は、グラフ関数電卓４のキー入力部１１からコマンドを入力することによって、プログラミング命令を作成する（ステップＳ１）。
【０１００】
生徒は、プログラミング命令を作成すると、グラフ関数電卓４の描画プログラム２２ａの機能を使って、プログラミング命令によって実現される経路描画の結果を、ディスプレイ１２から表示させることができる（ステップＳ２）。グラフ関数電卓４のディスプレイ１２の画面に描画される座標系に予め設定された座標範囲の外側へ、アバターＡｖが移動する場合、プログラミング命令に基づいて得られるアバターＡｖの最新の座標値が含まれるような座標範囲となるように、ディスプレイ１２の画面に描画する座標範囲を、適宜、スクロールしてよい。
【０１０１】
生徒は、このように、ディスプレイ１２から表示される経路描画の結果を参照しながら、プログラミング命令を完成させる。その後、生徒は、グラフ関数電卓４のキー入力部１１を操作して、先生の電子機器３へ向けてプログラミング命令を送信する指示を入力する（ステップＳ３）。この指示に応じて、ＣＰＵ２１は、描画プログラム２２ａにしたがって、生徒により作成されたプログラミング命令、および、到達地点Ｃの座標を示す各情報を、通信ネットワーク２を介して、電子機器３へ向けて、通信部２５により送信させる（ステップＳ４）。
【０１０２】
次に、先生側、すなわち、電子機器３側の動作について、図１９に示すフローチャートを用いて説明する。
【０１０３】
先生は、電子機器３のキー入力部３６を操作して、予め設定された１つの問題として、図７に示すような地図情報を入力する。具体的に、地図情報は、地点Ａ、Ｂの座標値と、障害物ａおよび障害物ｂを特定するための複数の座標値（各矩形領域の４つの頂点を特定する４つの座標値）とによって、特定される。先生は、図７に示すような地図情報を入力した後、生徒に対して、地図情報に含まれる地点Ａから地点Ｂまで、障害物である障害物ａおよび障害物ｂを回避しながらアバターＡｖを移動させるプログラミング命令を作成するように、口頭で指示する。
【０１０４】
このようなプログラミング課題に対する解答を分類する際の分類条件は、図８に示すように、（１）「正解」と（２）「不正解」に加えて、（１）「正解」に分類された各プログラミング命令の細分類条件として、（１−１）「最短移動距離」、（１−２）「最少の命令数」および（１−３）「その他」、（２）「不正解」に分類された各プログラミング命令の細分類条件として、（２−１）「障害物ａが存在しなければ到達」、（２−２）「障害物ｂが存在しなければ到達」、（２−３）「到達地点が地点Ｂではない」および（２−４）「その他」である。先生は、電子機器３のキー入力部３６を操作して、これらの分類条件のうち、プログラミングの授業において実際に利用する分類および細分類のいずれかを選択して特定することにより、分類条件を作成する。ＣＰＵ３１は、作成された分類条件を、分類条件記憶部３８に記憶させる（ステップＳ１１）。以下では、上述のステップＳ１１において、上述の全ての分類（即ち、（１）「正解」、（２）「不正解」）および細分類（即ち、（１−１）「最短移動距離」、（１−２）「最少の命令数」、（１−３）「その他」、（２−１）「障害物ａが存在しなければ到達」、（２−２）「障害物ｂが存在しなければ到達」、（２−３）「到達地点が地点Ｂではない」、（２−４）「その他」）が選択されて特定され、分類条件に設定されたものとして、説明する。
【０１０５】
ステップＳ４においてグラフ関数電卓４から送信されたプログラミング命令、および、到達地点Ｃの座標値は、通信部３２によって受信される（ステップＳ１２）。
【０１０６】
通信部３２によって受信されたプログラミング命令は、分類プログラム３７ａによって、分類条件記憶部３８に記憶された分類条件に基づいて、分類される（ステップＳ１３）。ステップＳ１３で、ＣＰＵ３１が分類プログラム３７ａにしたがって実行する処理は、前述した通りである。
【０１０７】
分類プログラム３７ａによって分類された結果は、例えばキー入力部３６を介してなされるユーザ（先生）からの要求に応じて、表示プログラム３７ｂによって、例えば、図１５〜図１７に示すように、正解または不正解、命令の数、および移動距離のような補足情報とともに、さらには、正解または不正解が判別可能なように、異なる色で経路軌跡を表示しながら、ディスプレイ３５から表示される（ステップＳ１４）。
【０１０８】
このように、電子機器３は、各生徒から送信されたプログラミング命令を、先生によって指定された分類条件に従って自動的に分類することができる。さらに、分類されたプログラミング命令を、補足情報とともにディスプレイ３５から表示することができる。
【０１０９】
これによって、先生は、各生徒から送信されたプログラミング命令を、自分で分類する必要性から解放されるので、限られた授業時間をより有効に活用することが可能となる。
【０１１０】
先生はさらに、ディスプレイ３５から表示される情報を参照することによって、各生徒から送信されたプログラミング命令の正解または不正解を直ちに把握できるのみならず、正解および不正解の内容までも一見して把握することが可能となる。さらには、どの解答がベストアンサーであるかも、瞬時に把握することが可能となる。
【０１１１】
したがって、先生は、生徒の理解度を直ちに把握し、それに応じて、生徒に対して、より的確な説明をすることが可能となる。
【０１１２】
以上説明したように、本発明の実施形態に係る分類方法が適用された電子機器３によれば、グラフ関数電卓４から送信された複数のプログラミング命令を、内容に応じて自動的に分類することができる。これによって、先生の負担を軽減し、授業効率の向上に資することが可能となる。
【０１１３】
特に、本発明の実施形態に係る分類方法が適用された電子機器３によって実現される、様々な解答を自動分類する機能は、正解が１つとは限らないアルゴリズムの学習への適用に特に有用であり、これによって、先生は、各生徒の理解度の把握のみならず、多くの生徒が陥りやすい誤りもまた容易に発見することができ、さらには、それに基づく適切な指導方法の立案にも大いに役立つものである。
（変形例）
上記の実施形態において、電子機器３のＣＰＵ３１によって実行するものとして説明した処理のうち、一部の処理は、電子機器３およびグラフ関数電卓４（＃１〜＃ｎ）と通信可能に通信ネットワーク２内に設置されたサーバ装置５のＣＰＵ５１によって、実行できるように構成してよい。そのように構成した変形例について、以下に説明する。図２０は、サーバ装置５の電子回路の構成例を示すブロック図である。サーバ装置５の各部のうち、電子機器３の対応する各部と同様に機能するものについては、その説明を適宜省略する。図２１は、電子機器およびサーバ装置の動作例を示すフローチャートである。図１９と同様の処理ステップについては、図２１でも同一の符号で示す。
【０１１４】
本変形例では、先生が、電子機器３のキー入力部３６を操作することにより、分類条件が作成され（ステップＳ１１）、次いで、作成された分類条件が、通信ネットワーク２を介して、サーバ装置５へ向けて送信される（ステップＳ１１Ａ）。サーバ装置５は、電子機器３から送信された分類条件を、通信ネットワーク２を介して取得し、取得した分類条件を、分類条件記憶部５８に記憶させる（ステップＳ１１Ｂ）。前述のステップＳ４においてグラフ関数電卓４から送信されたプログラミング命令、および、到達地点Ｃの座標値は、サーバ装置５の通信部５２によって受信される（ステップＳ１２）。サーバ装置５の通信部５２によって受信されたプログラミング命令は、分類プログラム５７ａによって、分類条件記憶部５８に記憶された分類条件に基づいて、分類される（ステップＳ１３）。分類プログラム５７ａによって分類された結果が、通信ネットワーク２を介して、電子機器３へ向けて送信される（ステップＳ１４Ａ）。
【０１１５】
電子機器３は、サーバ装置５から送信された分類条件を、通信ネットワーク２を介して取得し、取得した分類条件を、分類条件記憶部３８に記憶させる（ステップＳ１４Ｂ）。サーバ装置５の分類プログラム５７ａによって分類された結果は、電子機器３の例えばキー入力部３６を介してなされるユーザ（先生）からの要求に応じて、表示プログラム３７ｂによって、例えば、図１５〜図１７に示すように、ディスプレイ３５から表示される（ステップＳ１４）。
【０１１６】
以上、説明した変形例のように、ステップＳ１３を少なくとも含む一部の処理を、サーバ装置５において実行する構成にすれば、電子機器３は、ＣＰＵ３１、通信部３２、ディスプレイ３５、キー入力部３６等を少なくとも備えていればよい。これにより、先生が、分類プログラム３７ａや分類条件記憶部３８といった特別な構成を備えていない機器しか所有していなくても、ディスプレイ３５に表示された、グラフ関数電卓４を用いて生徒が作成したプログラミング命令の分類結果を、把握することができる。
【０１１７】
なお、上述の実施形態および変形例において、電子機器３のＣＰＵ３１およびサーバ装置５のＣＰＵ５１によって実行するものとして説明した各処理のうち、プログラミング命令を分類する処理（ステップＳ１３）を、グラフ関数電卓４のＣＰＵ４１によって実行するようにしてもよい。
【０１１８】
また、上記の実施形態および変形例において、グラフ関数電卓４は、通信部２５を備えるものとして説明したが、必ずしも通信部２５を備えていなくてもよい。この場合、描画プログラム２２ａは、プログラミング命令をコード化したＱＲコード（登録商標）を作成し、ディスプレイ１２から表示させる。そして、表示されたＱＲコードを、スマートフォンや、タブレット端末などの二次元コード読取装置６のカメラ機能で読み取ることによって、プログラミング命令を取得し、それらのスマートフォンやタブレット端末が、取得したプログラミング命令を、通信ネットワーク２を介して、電子機器３やサーバ装置５へ送信することによって、通信部２５の機能を代替することが可能である。また、電子機器３がカメラ機能を備える場合には、表示されたＱＲコードを、そのカメラ機能で直接読み取ることにより、電子機器３は通信ネットワーク２を介さずに、グラフ関数電卓４より、プログラミング命令を取得できる。
【０１１９】
さらに、上記の実施形態において、ステップＳ１１では、一部の分類のみ（この例に限らないが、例えば、（１）「正解」、（２）「不正解」、（１−１）「最短移動距離」、（１−２）「最少の命令数」および（１−３）「その他」のみ）が選択されて特定され、分類条件に設定されてもよい。その場合、各プログラミングが「不正解」であった場合に、細分類は行われなくてもよい。
【０１２０】
また、上記の実施形態において、到達地点の座標と、軌跡が障害物に交わるか否かとのいずれか一方のみの情報に基づいて、分類処理を実行してもよい。この場合、予め設定された１つの問題は、例えば、次のようなものであってよい。スタート地点の座標もゴール地点の座標も生徒が自由に設定できるが、地図情報に含まれる障害物ａ，ｂと軌跡が交わりさえしなければ、正解であるとしてよい。或いは、地図情報には障害物の情報が含まれておらず、スタート地点とゴール地点の各座標の情報のみが含まれており、スタート地点とゴール地点が一致さえしていれば、正解であるとしてよい。
【０１２１】
本願発明は、実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
【０１２２】
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【０１２３】
［１］
１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストを取得し、
取得した１つの命令リストの前記１以上の全ての命令にしたがって、ディスプレイの画面に設定された座標系内の位置および／又は軌跡を決定し、
決定した前記座標系内の前記位置が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した前記座標系内の前記軌跡が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の領域に交わるか否かを示す第２判定情報を決定し、
決定した前記第１判定情報および／又は前記第２判定情報に基づいて、当該１つの命令リストが、前記予め設定された１つの問題に応じた正解であるか否かを判定し、
前記第１判定情報、前記第２判定情報、および、前記正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、ディスプレイより出力する、
制御部を備える、電子機器。
【０１２４】
［２］
複数の前記命令リストを複数の外部端末より取得し、
前記複数の命令リストの各々についての前記いずれかの情報を、当該各命令リストを出力した前記外部端末毎に区別可能に、前記ディスプレイより出力する、［１］の電子機器。
【０１２５】
［３］
前記制御部は、
前記複数の命令リストの中での前記各命令リストの優劣を、当該各命令リストに含まれる命令の数と、当該各命令リストについて決定した前記座標系内の前記軌跡の長さとのうちの少なくともいずれかである第３判定情報と、前記各命令リストについての前記正誤判定情報と、に基づいて判定し、
前記各命令リストの優劣を示す情報を、前記いずれかの情報とともに、当該各命令リストを出力した前記外部端末毎に区別可能に、前記ディスプレイより出力する、［２］の電子機器。
【０１２６】
［４］
前記制御部は、前記各命令リストに含まれる１以上の全ての命令と、当該各命令リストについて決定した前記座標系内の前記軌跡と、当該各命令リストに含まれる命令の数と、当該各命令リストについて決定した前記座標系内の前記軌跡の長さとのうちの少なくともいずれかを、当該各命令リストについての前記いずれかの情報とともに、当該各命令リストを出力した前記外部端末毎に区別可能に、前記ディスプレイより出力する、［３］の電子機器。
【０１２７】
［５］
前記制御部は、
前記複数の外部端末の各ディスプレイに表示された各二次元コードを、前記電子機器の撮像デバイスによって読み取らせ、
読み取った前記各二次元コードをデコードすることにより、前記複数の命令リストを、前記複数の外部端末より取得する、［２］〜［４］の何れかの電子機器。
【０１２８】
［６］
１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストの入力を、入力部より受け付け、
入力を受け付けた前記１つの命令リストの情報を、外部の電子機器によって読み取り可能に出力する制御部を備えた、学習支援端末。
【０１２９】
［７］
前記外部の電子機器は、
前記学習支援端末より出力された前記情報を読み取ることにより、前記１つの命令リストを少なくとも取得し、
取得した前記１つの命令リストの前記１以上の全ての命令にしたがって、ディスプレイの画面に設定される座標系内の位置および／又は軌跡を決定し、
決定した前記座標系内の前記位置が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した前記座標系内の前記軌跡が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の領域に交わるか否かを示す第２判定情報を決定し、
決定した前記第１判定情報および／又は前記第２判定情報に基づいて、当該１つの命令リストが、前記予め設定された１つの問題に応じた正解であるか否かを判定し、
前記第１判定情報、前記第２判定情報、および、前記正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、ディスプレイより出力する、
制御部を備える、［６］の学習支援端末。
【０１３０】
［８］
学習支援端末と、電子機器と、二次元コード読取装置と、サーバ装置とを備える学習支援システムにより実行される学習支援方法であって、
前記学習支援端末の制御部は、
１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストの入力を、入力部より受け付け、
入力を受け付けた前記１つの命令リストの情報を少なくとも含む二次元コードを生成し、
生成した前記二次元コードを、外部の撮像装置によって読み取り可能に、ディスプレイより出力し、
二次元コード読取装置は、
前記ディスプレイより出力された前記二次元コードを、撮像装置により読み取って、デコードし、
デコードされた前記二次元コードの情報を、前記二次元コード読取装置の通信装置により送信し、
前記サーバ装置の制御部は、
前記二次元コード読取装置の前記通信装置により送信された前記二次元コードの情報を、前記サーバ装置の通信装置により受信し、
受信した前記二次元コードの情報をデコードして得られる、前記１以上の全ての命令にしたがって、ディスプレイの画面に設定される座標系内の位置および／又は軌跡を決定し、
決定した前記座標系内の前記位置が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した前記座標系内の前記軌跡が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の領域に交わるか否かを示す第２判定情報に基づいて、当該１つの命令リストが、前記予め設定された１つの問題に応じた正解であるか否かを判定し、
前記第１判定情報、前記第２判定情報、および、前記正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、前記サーバ装置の前記通信装置により送信し、
前記電子機器の制御部は、
前記いずれかの情報を、前記電子機器の通信装置により受信し、
前記いずれかの情報を、ディスプレイより出力する、学習支援方法。
【０１３１】
［９］
電子機器のコンピュータによって、
１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストを取得させ、
取得した１つの命令リストの前記１以上の全ての命令にしたがって、ディスプレイの画面に設定された座標系内の位置および／又は軌跡を決定させ、
決定した前記座標系内の前記位置が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の位置に一致するか否かを示す第１判定情報および／又は決定した前記座標系内の前記軌跡が、前記予め設定された１つの問題に応じて定まる前記座標系内の特定の領域に交わるか否かを示す第２判定情報を決定させ、
決定した前記第１判定情報および／又は前記第２判定情報に基づいて、当該１つの命令リストが、前記予め設定された１つの問題に応じた正解であるか否かを判定させ、
前記第１判定情報、前記第２判定情報、および、前記正解であるか否かの判定結果を示す正誤判定情報の少なくともいずれかの情報を、前記ディスプレイより出力させる、プログラム。
【０１３２】
［１０］
学習支援端末のコンピュータによって、
１以上の命令を含み、予め設定された１つの問題に対する解答として作成された１つの命令リストの入力を、入力部より受け付けさせ、
入力を受け付けた前記１つの命令リストの情報を、外部の電子機器によって読み取り可能に出力させる、プログラム。
【符号の説明】
【０１３３】
１・・ネットワーク構成
２・・通信ネットワーク
３・・電子機器
４・・グラフ関数電卓
５・・サーバ装置
６・・タブレット等
１１・・キー入力部
１２・・ディスプレイ
２１・・ＣＰＵ
２２・・メモリ
２２ａ・・描画プログラム
２２ｂ・・書込可能データエリア
２３・・外部記録媒体
２４・・記録媒体読取部
２５・・通信部
３１、５１・・ＣＰＵ
３２、５２・・通信部
３３、５３・・外部記録媒体
３４、５４・・記録媒体読取部
３５、５５・・ディスプレイ
３６、５６・・キー入力部
３７、５７・・メモリ
３７ａ、５７ａ・・分類プログラム
３７ｂ、５７ｂ・・表示プログラム
３７ｃ、５７ｃ・・書込可能データエリア
３８、５８・・分類条件記憶部
１１１・・数値・演算記号キー群
１１２・・関数機能キー群
１１３・・設定キー群
１１４・・ファンクションキー群
１１５・・カーソルキー
【図１】
2019174797.tif 000003
【図２】
2019174797.tif 000004
【図３】
2019174797.tif 000005
【図４】
2019174797.tif 000006
【図５】
2019174797.tif 000007
【図６】
2019174797.tif 000008
【図７】
2019174797.tif 000009
【図８】
2019174797.tif 000010
【図９】
2019174797.tif 000011
【図１０】
2019174797.tif 000012
【図１１】
2019174797.tif 000013
【図１２】
2019174797.tif 000014
【図１３】
2019174797.tif 000015
【図１４】
2019174797.tif 000016
【図１５】
2019174797.tif 000017
【図１６】
2019174797.tif 000018
【図１７】
2019174797.tif 000019
【図１８】
2019174797.tif 000020
【図１９】
2019174797.tif 000021
【図２０】
2019174797.tif 000022
【図２１】
2019174797.tif 000023