(57)【特許請求の範囲】
【請求項１】
数式に含めることが可能な複数の変数について変数値をそれぞれ記憶可能な変数値記憶手段と、
ユーザ操作に応じて、数式が入力される数式入力手段と、
前記数式入力手段により入力される数式を計算するための計算モードを設定する計算モード設定手段と、
前記数式入力手段により入力された数式と前記入力された数式に含まれる変数の変数値と前記計算モード設定手段により設定された計算モードとに応じたグラフ画像データを外部機器に生成させるために、前記入力された数式と前記入力された数式に含まれる変数の変数値と前記設定された計算モードとを、前記外部機器に送信する送信手段と、
を備える数式処理装置。
【請求項２】
前記外部機器はサーバであり、前記外部機器に生成させるグラフ画像データは、前記サーバと通信接続された通信機器で表示させるためのグラフ画像データである、ことを特徴とする請求項１に記載の数式処理装置。
【請求項３】
当該数式処理装置は、関数電卓である、ことを特徴とする請求項１又は２に記載の数式処理装置。
【請求項４】
当該数式処理装置は、小型の関数電卓であり、
前記外部機器はサーバであり、前記外部機器に生成させるグラフ画像データは、プロジェクタに投影出力可能な通信機器で表示させるためのグラフ画像のドットデータである、
ことを特徴とする請求項１〜３のいずれか1項に記載の数式処理装置。
【請求項５】
前記入力された数式と前記入力された数式に含まれる変数の変数値と前記設定された計算モードとを、２次元コード化して表示して外部出力する２次元コード表示出力手段を備える、ことを特徴とする請求項１又は２に記載の数式処理装置。
【請求項６】
電子機器の数式処理方法であって、
数式に含めることが可能な複数の変数について変数値をそれぞれ記憶するための変数値記憶ステップと、
ユーザ操作に応じて、数式が入力される数式入力ステップと、
前記数式入力ステップにより入力される数式を計算するための計算モードを設定する計算モード設定ステップと、
前記数式入力ステップにより入力された数式と前記入力された数式に含まれる変数の変数値と前記計算モード設定ステップにより設定された計算モードとに応じたグラフ画像データを外部機器に生成させるために、前記入力された数式と前記入力された数式に含まれる変数の変数値と前記設定された計算モードとを、前記外部機器に送信する送信ステップと、
とからなる計算処理方法。
【請求項７】
電子機器のコンピュータを制御するためのプログラムであって、
前記コンピュータを、
数式に含めることが可能な複数の変数について変数値をそれぞれ記憶可能な変数値記憶手段、
ユーザ操作に応じて、数式が入力される数式入力手段、
前記数式入力手段により入力される数式を計算するための計算モードを設定する計算モード設定手段、
前記数式入力手段により入力された数式と前記入力された数式に含まれる変数の変数値と前記計算モード設定手段により設定された計算モードとに応じたグラフ画像データを外部機器に生成させるために、前記入力された数式と前記入力された数式に含まれる変数の変数値と前記設定された計算モードとを、前記外部機器に送信する送信手段、として機能させるためのコンピュータ読み込み可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数式処理装置、計算処理方法およびプログラムに関する。
【背景技術】
【０００２】
特許文献１は、テキスト入力表示装置にて入力したテキストをＱＲコード（登録商標）等の２次元コード化して表示して、他の機器のカメラで撮影してテキスト変換して当該機器で利用できるようにすることを提案している。
【０００３】
一方、従来より、関数電卓と称する様々な関数式の計算過程を学習させる数式処理装置が広く利用されている。
【０００４】
また、近年、スマートフォン等の通信機器からアクセスして、インターネット上で高機能な計算サービスを受けられるようにする計算サーバも提供されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−７６５４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
数式処理装置においても、前記特許文献１のように、入力された数式を２次元コード化して、スマートフォン等の通信機器のカメラで撮影して、当該通信機器で数式を計算したり、さらに当該通信機器から計算サーバにアクセスして数式を計算したりすることが考えられる。
【０００７】
しかしながら、数式処理装置において、前記特許文献１のように単に入力された数式を２次元コード化したのでは、当該通信機器或いは計算サーバでは、その数式自体は利用できるが、それだけでは情報が不足して、適切に数式を計算ができないという場合がある。すなわち、数式には、その数式の計算に必要な設定や変数といった、数式を計算するのに必要な関連データが必要な場合がある。
【０００８】
本発明は、このような課題に鑑みなされたもので、入力された数式を通信機器や計算サーバで計算できるように出力可能な数式処理装置、および該数式処理装置から出力された数式を計算する計算サーバ、並びに、電子機器のコンピュータをそれら数式処理装置または計算サーバとして機能させるためのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明に係る数式処理装置は、数式に含めることが可能な複数の変数について変数値をそれぞれ記憶可能な変数値記憶手段と、ユーザ操作に応じて、数式が入力される数式入力手段と、前記数式入力手段により入力される数式を計算するための計算モードを設定する計算モード設定手段と、前記数式入力手段により入力された数式と前記入力された数式に含まれる変数の変数値と前記計算モード設定手段により設定された計算モードとに応じたグラフ画像データを外部機器に生成させるために、前記入力された数式と前記入力された数式に含まれる変数の変数値と前記設定された計算モードとを、前記外部機器に送信する送信手段と、を備えたことを特徴としている。
【発明の効果】
【００１０】
本発明によれば、数式処理装置でユーザ入力された数式を外部機器に送信して、前記入力数式に対応するグラフ画像データを適切に外部機器に生成させることが可能になる。
【図面の簡単な説明】
【００１１】
【図１】本発明の数式処理装置の第１実施形態に係る関数電卓の外観構成を示すと共に、該関数電卓と本発明の第１実施形態に係る計算サーバとの関係を示す模式図である。
【図２】前記関数電卓の回路構成を示す図である。
【図３】前記計算サーバの回路構成を示す図である。
【図４】前記関数電卓の表示制御処理のフローチャートを示す図である。
【図５】（Ａ）乃至（Ｆ）はそれぞれ前記関数電卓のユーザ操作とそれに応じた表示出力との例を示す図であり、（Ｇ）は２次元コードの内容のデータを示す図である。
【図６】（Ａ）は図４中の必要情報検出処理のフローチャートを示す図であり、（Ｂ）は図５（Ｆ）の２次元コードの内容に基づく計算結果の通信機器での表示を示す図であり、（Ｃ）は図７（Ｇ）の２次元コードの内容に基づく計算結果の通信機器での表示を示す図である。
【図７】（Ａ）乃至（Ｆ）はそれぞれ前記関数電卓のユーザ操作とそれに応じた表示出力との別の例を示す図であり、（Ｇ）は２次元コードの内容のデータを示す図である。
【図８】（Ａ）は前記計算サーバのサーバ処理のフローチートを示す図であり、（Ｂ）は本発明の第２実施形態に係る計算サーバのサーバ処理のフローチートを示す図である。
【図９】図８中の数式、検出データ整合確認処理のフローチャートを示す図である。
【図１０】（Ａ）乃至（Ｆ）はそれぞれ前記関数電卓のユーザ操作とそれに応じた表示出力との更に別の例を示す図であり、（Ｇ）は２次元コードの内容を示す図である。
【図１１】（Ａ）は図１０（Ｇ）の２次元コードの内容に基づく計算結果の通信機器での表示を示す図であり、（Ｂ）は通信機器での設定値の修正入力を説明するための図であり、（Ｃ）は修正された設定値に基づく計算結果の通信機器での表示を示す図である。
【図１２】（Ａ）および（Ｂ）はそれぞれ本発明の数式処理装置の第２実施形態に係る関数電卓における表示例を示す図であり、（Ｃ）は２次元コードの内容を示す図であり、（Ｄ）は（Ｃ）の２次元コードの内容に基づく計算結果の通信機器でのテーブル表示を示す図であり、（Ｅ）は表示切替した計算結果の通信機器でのグラフ表示を示す図である。
【図１３】（Ａ）はグラフ表示でのアラート表示を示す図であり、（Ｂ）は通信機器での設定値の修正入力を説明するための図であり、（Ｃ）は修正された設定値に基づく計算結果の通信機器でのグラフ表示を示す図である。
【発明を実施するための形態】
【００１２】
以下図面により本発明の実施の形態について説明する。
【００１３】
［第１実施形態］
ここでは、図１に示すように、本発明の数式処理装置の第１実施形態に係る関数電卓１０と、関数電卓１０から表示出力されたＱＲコード等の２次元コードを撮影するスマートフォン等のカメラ付き通信機器Ｅと、該カメラ付き通信機器Ｅが、その撮影した２次元コードの内容に従ってインターネット等の通信ネットワークＮを介してアクセス可能な、本発明の第１実施形態に係る計算サーバ２０と、該計算サーバ２０での計算結果を通信ネットワークＮを介して受信して表示出力する通信機器Ｅとからなるシステムを例に説明する。なお、同図では、２つの通信機器Ｅを示しているが、これは計算サーバ２０に対する送信データと受信データの表示の違いを示すために別のものとして示したに過ぎす、実際には同じもの即ち一つの通信機器である。勿論、同図のように、別々の通信機器としても構わない。また、この通信機器Ｅは、スマートフォンに限定されるものではなく、ＰＤＡ（personal digital assistants）、タブレットＰＣ、ノートＰＣ（personal computer）等として構成され得る。
【００１４】
関数電卓１０は、その携帯性の必要からユーザが片手で十分把持し片手で操作可能な小型サイズからなり、この関数電卓１０の本体正面にはキー入力部１１および表示出力部１２が設けられる。
【００１５】
前記キー入力部１１には、数値や数式を入力したり計算の実行を指示したりするための数値・演算記号キー群１１１、各種の関数を入力したりメモリ機能を立ち上げたりするための関数機能キー群１１２、各種動作モードのメニュー画面を表示させたり動作モードの設定を指示したりするためのモード設定キー群１１３、前記表示出力部１２に表示されたカーソルの移動操作やデータ項目の選択操作などを行うためのカーソルキー１１４が備えられる。
【００１６】
前記数値・演算記号キー群１１１としては、［０］〜［９］（数値）キー、［＋］［−］［×］［÷］（四則記号）キー、［Ａｎｓ］［＝］（実行）キー、［ＡＣ］（クリア）キーなどが配列される。
【００１７】
前記関数機能キー群１１２としては、［ｘ-1］（−１乗；逆数）キーをはじめ、［√□］（ルート）キー、［□／□］（分数）キー、［ｓｉｎ］（サイン）キー、［Ｍ＋］（メモリプラス）キー、［ＯＰＴＮ］（オプション）キー、［ＲＣＬ］（メモリ呼び出し）キーなどが配列される。
【００１８】
前記モード設定キー群１１３としては、［ＭＯＤＥ］（モード）キー、［ＳＨＩＦＴ］（シフト）キー、［ＡＬＰＨＡ］（アルファベット）キー、［ＯＮ］（電源オン）キーなどが配列される。
【００１９】
なお、前記数値・演算記号キー群１１１や関数機能キー群１１２のキーは、［ＳＨＩＦＴ］キーと同時に操作される（同時に押下される）ことで、そのキートップに記載されたキー機能ではなく、そのキーの上方に記載されたキーとして機能できるようになっている。例えば、［ＳＨＩＦＴ］キーと［ＡＣ］キーとの同時操作（以下、［ＳＨＩＦＴ］＋［ＡＣ］キーと記す。以下同様。）は［ＯＦＦ］（電源オフ）キーとなる。［ＳＨＩＦＴ］＋［ＯＰＴＮ］キーは［ＱＲ］（ＱＲ）キーとなり、［ＳＨＩＦＴ］＋［ＲＣＬ］キーは［ＳＴＯ］（メモリ登録）キーとなる。
【００２０】
前記表示出力部１２は、ドットマトリクス型の液晶表示ユニットからなる。
【００２１】
図２は、前記関数電卓１０の電子回路の構成を示すブロック図である。
【００２２】
この関数電卓１０の電子回路は、前記キー入力部１１および表示出力部１２に加えて、コンピュータであるＣＰＵ１３と、メモリ１４と、記録媒体読取部１５とを備えている。また、同図に破線で示すように、無線通信部１６を備えていても良い。
【００２３】
前記ＣＰＵ１３は、メモリ１４に記憶されている数式計算処理プログラム１４１に従い回路各部の動作を制御し、キー入力部１１からのキー入力信号に応じた各種の演算処理を実行する。この数式計算処理プログラム１４１は、メモリ１４に予め記憶されていても良いし、あるいはメモリカード等の外部記録媒体Ｍから記録媒体読取部１５を介してメモリ１４に読み込まれて記憶されたものであっても良い。この数式計算処理プログラム１４１は、ユーザがキー入力部１１の操作によって書き換えできないようになっている。
【００２４】
前記メモリ１４には、さらに、ユーザ書き換え不可能な情報として、固有ＩＤ１４２および計算サーバアドレス１４３も記憶される。ここで、前記固有ＩＤ１４２は、各関数電卓１０に独特なＩＤである。計算サーバアドレス１４３は、前記計算サーバ２０のインターネットアドレスである。なお、この計算サーバアドレス１４３は、前記数式計算処理プログラム１４１の一部として提供されても構わない。
【００２５】
前記メモリ１４には、このようなユーザ書き換え不可能な情報の他に、ユーザが書き換え可能なデータを記憶するために、設定データメモリ１４４、変数値メモリ１４５、実行機能メモリ１４６、数式データメモリ１４７、その他データメモリ１４８、ワークエリア１４９などが確保されている。
【００２６】
前記設定データメモリ１４４には、前記キー入力部１１の［ＳＨＩＦＴ］＋［ＭＯＤＥ］（＝［ＳＥＴＵＰ］）キー操作に従って設定された各種計算表示モードについての設定データが記憶される。この計算表示モードの設定データとしては、例えば、表示モード「１：ＬｉｎｅＩＯ（１行表示）モード／２：ＭｔｈＩＯ（教科書表示）モード」、角度計算モード「３：ｄｅｇ（度）モード／４：ｒａｄ（ラジアン）モード／５：ｇｒａ（グラード）モード」、丸め計算モード「６：Ｆｉｘ（小数点以下桁数固定）モード／７：Ｓｃｉ（有効桁数指定）モード／８：Ｎｏｒｍモード：丸めなし」、などの各種計算表示モードの設定データが記憶される。前記設定データメモリ１４４には、初期状態では、所定の初期設定のモードが設定されている。具体的には、表示モード（ＭｔｈＩＯ（教科書表示）モード）、角度計算モード（ｄｅｇ（度）モード／）、丸め計算モード（Ｎｏｒｍ：丸めなし）、などの初期設定のモードが記憶されている。そして、例えば［ＳＨＩＦＴ］＋［ＭＯＤＥ］（＝［ＳＥＴＵＰ］）キー操作の後に、「４」キーを押すと、角度モード（３：ｄｅｇ（度）モード）が、角度モード（４：ｒａｄ（ラジアン）モード）に変更されて角度モードが登録される。
【００２７】
前記変数値メモリ１４５は、Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｍ，Ｘ，Ｙの９つの文字に対して、個別に異なる数値などが記憶されるメモリ領域であり、初期状態では、全て「０」が記憶されている。そして例えば、前記キー入力部１１の［３］キー，［ＳＨＩＦＴ］＋［ＲＣＬ］キー（＝［ＳＴＯ］キー），［（−）］キー（＝［Ａ］キー）というキー操作を行うことで、前記変数値メモリ１４５の変数メモリＡが指定されて、変数値「３」が設定される。なお、前記変数値メモリ１４５を、Ａ〜Ｚの各文字に対して、個別に異なる数値などが記憶されるメモリ領域としてもよい。その場合、ユーザ操作により変数が指定されて変数値が設定される毎に、その変数のメモリ領域を確保するようにしてもよい。
【００２８】
実行機能メモリ１４６には、前記キー入力部１１の［ＭＯＤＥ］キー操作に従って設定された、関数テーブル機能等の計算モードが記憶される。
【００２９】
数式データメモリ１４７には、前記キー入力部１１によりキー入力されたキーコードのデータが順次入力され、これにより構成される数式のデータが記憶される。例えば数値キーは数字を示すコードで、「ｓｉｎ」などの関数キーはその関数を示すコードで、「＋」「−」「×」「÷」などの算術記号キーはその算術記号を示すコードで記憶される。
【００３０】
その他データメモリ１４８には、数式の計算に必要なその他のデータ、例えば計算範囲が記憶される。計算範囲は、初期値、最終値、ステップを含む。
【００３１】
前記ワークエリア１４９には、前記数式計算処理プログラム１４１に従って、前記ＣＰＵ１３に入出力される各種のデータが必要に応じて一時的に記憶される。例えば、詳細は後述するようにして抽出された、数式の計算に必要な設定や変数が記憶される。
【００３２】
なお、無線通信部１６は、Ｂｌｕｅｔｏｏｔｈ（登録商標）や赤外線通信等の、外部の通信機器Ｅ等と無線通信する機能を備えている。
【００３３】
このように構成された関数電卓１０は、前記ＣＰＵ１３が前記数式計算処理プログラム１４１に記述された命令に従い回路各部の動作を制御し、ソフトウエアとハードウエアとが協働して動作することにより、以下の動作説明で述べるような、計算サーバ２０のアドレス、当該関数電卓１０の固有ＩＤと、キー入力部１１から入力された機能種別（例えば、関数テーブル機能）、機能別計算データ（例えば、関数式と計算範囲）、抽出データ、その他のデータ（例えば、設定データ）を２次元コード、本実施形態ではＱＲコード化し、表示出力部１２により表示出力する、表示制御機能を実現する。
【００３４】
カメラ付き通信機器Ｅは、この関数電卓１０の表示出力部１２に表示出力されたＱＲコードを撮影し、その撮影したＱＲコードの内容（ＱＲデータ）に従って通信ネットワークＮを介して計算サーバ２０にＱＲデータを送信する。
【００３５】
図３は、前記計算サーバ２０の電子回路の構成を示すブロック図である。
【００３６】
この計算サーバ２０の電子回路は、コンピュータであるＣＰＵ２１と、メモリ２２と、記録媒体２３と、記録媒体読取部２４と、通信部２５とを備えている。また、同図に破線で示すように、キー入力部２６或いは表示出力部２７を備えていても良い。
【００３７】
前記ＣＰＵ２１は、メモリ２２に予め記憶されている、あるいはメモリカード等の記録媒体２３から記録媒体読取部２４を介してメモリ２２に読み込まれた、あるいは通信ネットワークＮ上のＷｅｂサーバから通信部２５を介してメモリ２２にダウンロードされた、サーバ制御プログラム２２１に従い回路各部の動作を制御し、通信部２５で受信したカメラ付き通信機器Ｅからの受信ＱＲデータに応じた各種の演算処理を実行する。
【００３８】
前記メモリ２２には、前記サーバ制御プログラム２２１が記憶される他に、通信部２５を介して受信したＱＲデータを、その受信ＱＲデータ毎に記憶する受信ＱＲデータメモリ２２２が確保される。
【００３９】
なお、サーバ制御プログラム２２１は、当該計算サーバ２０のオペレータのキー入力部２６の設定操作やメンテナンス操作等に応じた設定動作やメンテナンス動作を行う機能、その動作の途中経過や結果を表示出力部２７に表示する機能、等を備えている。
【００４０】
このように構成された計算サーバ２０は、前記ＣＰＵ２１が前記サーバ制御プログラム２２１に記述された命令に従い回路各部の動作を制御し、ソフトウエアとハードウエアとが協働して動作することにより、以下の動作説明で述べるような、受信ＱＲデータに基づく数式の計算を行い、その計算結果を、前記受信ＱＲデータの送信元であるカメラ付き通信機器Ｅを送信する、サーバ処理機能を実現する。なお、受信ＱＲデータに、計算結果の送信先として別の通信機器を特定するための情報が含まれていたり、予め関数電卓１０の固有ＩＤに対応付けて送信先が特定されている際には、前記送信元のカメラ付き通信機器Ｅ以外へ計算結果を送信することも可能である。
【００４１】
カメラ付き通信機器Ｅは、通信ネットワークＮを介して前記計算サーバ２０から受信した計算結果を、その表示出力部ＥＤに表示したり、当該カメラ付き通信機器ＥにプロジェクタＰを接続して、計算結果を投影出力したりすることができる。
【００４２】
次に、前記構成の関数電卓１０の表示制御機能について、図４の表示制御処理のフローチャートに従って説明する。
【００４３】
関数電卓１０のＣＰＵ１３は、キー入力部１１の操作が行われると、それが設定データ変更操作であるか否か、つまり［ＳＨＩＦＴ］＋［ＭＯＤＥ］（＝［ＳＥＴＵＰ］）キー操作であるか否かを判別する（ステップＳ１０１）。ここで、設定データ変更操作でないと判別した場合には、ＣＰＵ１３は、キー入力部１１の操作が関数テーブル機能の実行操作であるか否か、つまり［ＭＯＤＥ］キー操作による関数テーブルの選択操作であるか否かを判別する（ステップＳ１０２）。そして、関数テーブル機能の実行操作でもないと判別した場合には、ＣＰＵ１３は、キー入力部１１の操作が変数入力操作であるか否か、つまり［ＳＨＩＦＴ］＋［ＲＣＬ］（＝［ＳＴＯ］）キー操作であるか否かを判別する（ステップＳ１０３）。この変数入力操作でもないと判別した場合には、ＣＰＵ１３は、他の処理を実行することとなる。
【００４４】
前記ステップＳ１０１において、設定データ変更操作であると判別した場合、ＣＰＵ１３は、表示出力部１２に数式の表示計算についての複数種類の設定データを変更して設定するための変更画面を表示させる。具体的には、表示設定モードである「１：ＭｔｈＩＯ（自然表示)  ２：ＬｉｎｅＩＯ（ライン表示）」、角度計算の設定モードである「３：Ｄｅｇ（角度設定：度）  ４：Ｒａｄ（角度設定：ラジアン）  ５：Ｇｒａ（角度設定：グラード)」、丸め計算の設定モードである「６：Ｆｉｘ（小数点以下桁数固定）モード／７：Ｓｃｉ（有効桁数指定）モード／８：Ｎｏｒｍモード：丸めなし」、等が表示される（ステップＳ１０４）。そして、メモリ１４の設定データメモリ１４４の内容を、キー入力部１１のユーザ操作（数値キーによる番号入力）により設定されたモードに変更する。具体的には、ユーザが数字キー「４」を押す操作を行うと、メモリ１４の設定データメモリ１４４の角度モードの内容がラジアンに変更して設定される（ステップＳ１０５）。その後、ＣＰＵ１３は、処理を前記ステップＳ１０１に戻す。
【００４５】
一方、前記ステップＳ１０３において、変数入力操作であると判別した場合には、ＣＰＵ１３は、キー入力部１１のユーザの入力操作により変数が指定されて変数値の入力を受けて（ステップＳ１０６）、メモリ１４の指定の変数の変数値メモリ１４５に、その入力された変数値を設定する（ステップＳ１０７）。その後、ＣＰＵ１３は、処理を前記ステップＳ１０１に戻す。
【００４６】
そして、前記ステップＳ１０２において、関数テーブル機能の実行操作であると判別した場合には、ＣＰＵ１３は、メモリ１４の実行機能メモリ１４６に「関数テーブル機能」を記憶すると共に、キー入力部１１のユーザ操作による関数式１および関数式２の数式の入力を受け付ける（ステップＳ１０８）。これは、関数テーブル機能の実行操作に応じて表示出力部１２に、まず関数式１の数式の入力のための「ｆ（ｘ）＝」という表示を行うことで、ユーザに関数式１の数式の入力を促す。そして、ユーザは、キー入力部１１を操作して、例えば、図５（Ａ）に示すように、変数ＡおよびＢを含む数式である関数式「（Ａ＋Ｂ）ｘ」を入力した後、実行キーである［＝］キーを操作する。これにより、メモリ１４の数式データメモリ１４７に関数式１として「ｆ（ｘ）＝（Ａ＋Ｂ）ｘ」が登録される。引き続き、ＣＰＵ１３は、表示出力部１２に、関数式２の入力のための「ｇ（ｘ）＝」という表示を行うことで、ユーザに関数式２の数式の入力を促す。そして、ユーザは、キー入力部１１を操作して、例えば、図５（Ｂ）に示すように、変数ＡおよびＣを含む数式である関数式「（Ａ＋Ｃ）ｘ」を入力した後、［＝］キーを操作する。これにより、メモリ１４の数式データメモリ１４７に関数式２として「ｇ（ｘ）＝（Ａ＋Ｃ）ｘ」が登録される。
【００４７】
その後、ＣＰＵ１３は、キー入力部１１の［ＱＲ］キーつまり［ＳＨＩＦＴ］＋［ＯＰＴＮ］キーが押されたか否かを判別する（ステップＳ１０９）。ここで、［ＱＲ］キーが押されたと判別した場合には、ＣＰＵ１３は、処理を後述するステップＳ１１３に進める。
【００４８】
これに対して、［ＱＲ］キーが押されていないと判別した場合には、ＣＰＵ１３は、キー入力部１１のユーザ操作による関数式の計算範囲（初期値、最終値、ステップ（増分））の入力を受け付ける（ステップＳ１１０）。すなわち、ＣＰＵ１３は、表示出力部１２に、まず初期値の入力のための「Ｓｔａｒｔ？」という表示を行うことで、ユーザに初期値の入力を促す。そして、ユーザは、キー入力部１１を操作して、例えば、図５（Ｃ）に示すように、初期値としての数値［１］を入力した後、［＝］キーを操作する。これにより、メモリ１４のその他データメモリ１４８に初期値として「１」が登録される。引き続き、ＣＰＵ１３は、表示出力部１２に、最終値の入力のための「Ｅｎｄ？」という表示を行うことで、ユーザに最終値の入力を促す。そして、ユーザは、キー入力部１１を操作して、例えば、図５（Ｄ）に示すように、最終値としての数値［４］を入力した後、［＝］キーを操作する。これにより、メモリ１４のその他データメモリ１４８に最終値として「４」が登録される。その後、ＣＰＵ１３は、表示出力部１２に、増分の入力のための「Ｓｔｅｐ？」という表示を行うことで、ユーザに増分の入力を促す。そして、ユーザは、キー入力部１１を操作して、例えば、図５（Ｅ）に示すように、増分としての数値［１］を入力した後、［＝］キーを操作する。これにより、メモリ１４のその他データメモリ１４８にステップとして「１」が登録される。
【００４９】
こうして関数式の計算範囲が入力されたならば、ＣＰＵ１３は、メモリ１４の数式データメモリ１４７に記憶された関数式と、その他データメモリ１４８に記憶された計算範囲、および変数値メモリ１４５に記憶された変数とに基づいて、関数テーブルを計算し、その計算結果を、設定データメモリ１４４に記憶された設定モードに従って、表示出力部１２に表示出力する（ステップＳ１１１）。
【００５０】
その後、ＣＰＵ１３は、キー入力部１１の［ＱＲ］キーつまり［ＳＨＩＦＴ］＋［ＯＰＴＮ］キーが押されたか否かを判別する（ステップＳ１１２）。ここで、［ＱＲ］キーが押されたと判別した場合には、ＣＰＵ１３は、処理を後述するステップＳ１１３に進める。これに対して、［ＱＲ］キーが押されていないと判別した場合には、ＣＰＵ１３は、処理を前記ステップＳ１０１に戻す。
【００５１】
前記ステップＳ１０９またはステップＳ１１２において、［ＱＲ］キーが押されたと判別した場合には、ＣＰＵ１３は、必要情報検出処理を実行する（ステップＳ１１３）。
【００５２】
図６（Ａ）は、この必要情報検出処理のフローチャートを示している。
【００５３】
すなわち、この必要情報検出処理において、ＣＰＵ１３は、まず、メモリ１４の数式データメモリ１４７に記憶された入力数式に変数が有るか否かを判別する（ステップＳ１１３Ａ）。ここで、変数が無いと判別した場合には、ＣＰＵ１３は、更に、入力数式に三角関数が含まれるか否かを判別する（ステップＳ１１３Ｂ）。ここで、三角関数が含まれないと判別した場合には、ＣＰＵ１３は、処理を上位のルーチンに戻す。
【００５４】
前記ステップＳ１１３Ａにおいて、変数が有ると判別した場合には、例えば、前述の例では、変数Ａ，Ｂ，Ｃが有るので、ＣＰＵ１３は、入力式中の変数の値、例えば「１」，「４」，「３」をメモリ１４の変数値メモリ１４５から抽出し、その抽出したデータをメモリ１４のワークエリア１４９に抽出データとして格納する（ステップＳ１１３Ｃ）。その後、ＣＰＵ１３は、処理を前記ステップＳ１１３Ｂに進める。
【００５５】
また、前記ステップＳ１１３Ｂにおいて、三角関数が含まれると判別した場合には、ＣＰＵ１３は、設定されている角度モード（ｄｅｇモード／ｒａｄモード／ｇｒａモード）をメモリ１４の設定データメモリ１４４から抽出し、その抽出したデータをメモリ１４のワークエリア１４９に抽出データとして格納する（ステップＳ１１３Ｄ）。その後、ＣＰＵ１３は、処理を上位のルーチンに戻す。なお、計算結果が小数になる場合に、小数を丸めするかどうかを設定する丸めモードの設定データが必要となるが、この丸めモードの設定データも合わせて、抽出データとしてワークエリア１４９に抽出データとして格納するようにしてもよい。また、設定データメモリ１４４の各設定データを一括して、抽出データとしてワークエリア１４９に抽出データとして格納するようにしてもよい。
【００５６】
ここで、関数式に三角関数が含まれる例を図７に示す。
【００５７】
前記ステップＳ１０８において、関数式１の入力のための「ｆ（ｘ）＝」という表示に対し、図７（Ａ）に示すように、［ｓｉｎ］キーを操作すると、表示は「ｆ（ｘ）＝ｓｉｎ（」となり、引き続き［ｘ］キー（［ＡＬＰＨＡ］＋［）］キー）、［）］キーを操作した後、実行キーである［＝］キーを操作することで、メモリ１４の数式データメモリ１４７に関数式１として「ｆ（ｘ）＝ｓｉｎ（ｘ）」が登録される。引き続き、関数式２の入力のための「ｇ（ｘ）＝」という表示に対し、図７（Ｂ）に示すように、［ｃｏｓ］キーを操作すると、表示は「ｇ（ｘ）＝ｃｏｓ（」となり、引き続き［ｘ］キー（［ＡＬＰＨＡ］＋［）］キー）、［）］キーを操作した後、実行キーである［＝］キーを操作することで、メモリ１４の数式データメモリ１４７に関数式２として「ｇ（ｘ）＝ｃｏｓ（ｘ）」が登録される。
【００５８】
その後、ステップＳ１１０において、初期値の入力のための「Ｓｔａｒｔ？」という表示に対し、図７（Ｃ）に示すように、初期値としての数値［０］を入力した後、［＝］キーを操作することで、メモリ１４のその他データメモリ１４８に初期値として「０」が登録される。引き続き、最終値の入力のための「Ｅｎｄ？」という表示に対し、図７（Ｄ）に示すように、最終値としての数値［３］［６］［０］を入力した後、［＝］キーを操作することで、メモリ１４のその他データメモリ１４８に最終値として「３６０」が登録される。その後、「Ｓｔｅｐ？」という表示に対し、図７（Ｅ）に示すように、増分としての数値［９］［０］を入力した後、［＝］キーを操作することで、メモリ１４のその他データメモリ１４８にステップとして「９０」が登録される。
【００５９】
このような入力を行った場合には、前記ステップＳ１１３Ａでは変数が無いと判別されるが、前記ステップＳ１１３Ｂにおいて、三角関数が含まれると判別される。そして、例えば前記ステップＳ１０５においてｄｅｇモードに設定されているとすれば、前記ステップＳ１１３Ｄにおいて、その設定されている角度モードであるｄｅｇモードが、メモリ１４の設定データメモリ１４４から抽出されて、メモリ１４のワークエリア１４９に抽出データとして格納されることとなる。
【００６０】
このようなステップＳ１１３の必要情報検出処理を終了したならば、ＣＰＵ１３は、計算サーバ２０のアドレス、メモリ１４の固有ＩＤ１４２に記憶されている当該関数電卓１０の固有ＩＤ、実行機能メモリ１４６に記憶されている実行機能の機能種別（例えば、関数テーブル機能）、機能別計算データ（例えば、数式データメモリ１４７に記憶されている関数式とその他データメモリ１４８に記憶されている計算範囲）、ワークエリア１４９に記憶されている抽出データ（例えば設定データメモリ１４４から抽出した角度モードや変数値メモリ１４５から抽出した変数値）、その他をＱＲコード化して、表示出力部１２に表示出力する（ステップＳ１１４）。
【００６１】
これにより、図５（Ｆ）または図７（Ｆ）に示すように、表示出力部１２にＱＲコードが表示出力されることになる。なお、この図５（Ｆ）のＱＲコードの内容は、図５（Ｇ）のようになっている。また、図７（Ｆ）のＱＲコードの内容は、図７（Ｇ）のようになっている。
【００６２】
その後、ＣＰＵ１３は、関数式の再入力があるか否かを判別する（ステップＳ１１５）。ここで、再入力がないと判別した場合には、ＣＰＵ１３は、処理を前記ステップＳ１０１に戻す。
【００６３】
これに対して、再入力があると判別した場合には、ＣＰＵ１３は、処理を前記ステップ１０８に戻す。そして、前述したようにして、新たな関数式の入力を受け付ける。そして、この新たな関数式において、計算範囲を変更する必要がなければ、前記ステップＳ１０９において、［ＱＲ］キーつまり［ＳＨＩＦＴ］＋［ＯＰＴＮ］キーが押されるので、ＣＰＵ１３は、処理を前記ステップＳ１１３に進めることとなる。
【００６４】
次に、前記構成の計算サーバ２０のサーバ処理機能について、図８（Ａ）のサーバ処理のフローチャートに従って説明する。
【００６５】
計算サーバ２０のＣＰＵ２１は、まず、ＱＲデータの処理を行うか否かを判別する（ステップＳ２０１）。ここで、ＱＲデータ処理を行わずに、他の処理を行うと判別した場合には、ＣＰＵ２１は、他の処理へと処理を進める。
【００６６】
これに対して、ＱＲデータ処理を行うと判別した場合、ＣＰＵ２１は、カメラ付き通信機器ＥのＱＲ操作によるＱＲデータを通信部２５が受信するのを待つ（ステップＳ２０２）。すなわち、関数電卓１０において前述の表示制御処理により表示出力部１２にＱＲコードが表示され、カメラ付き電子機器ＥでこのＱＲコードを撮影すると、そのＱＲコードの内容（ＱＲデータ）が解読され、計算サーバ２０のアドレスへのアクセスが可能となる。そして、自動的にまたはユーザのカメラ付き電子機器Ｅの操作に応じて、カメラ付き電子機器Ｅは通信ネットワークＮを介して、そのアドレスの計算サーバ２０へ、前記ＱＲデータを送信してくる。計算サーバ２０は、このステップＳ２０２において、このカメラ付き電子機器ＥからのＱＲデータの受信を待つものである。
【００６７】
ＱＲデータを受信したと判別したならば、ＣＰＵ２１は、受信ＱＲデータ、つまり関数電卓１０の固有ＩＤ、機能種別（例えば、関数テーブル機能）、機能別計算データ（例えば、関数式と計算範囲）、抽出データ（例えば角度モードや変数値）、その他をメモリ２２の受信ＱＲデータメモリ２２２に保存する（ステップＳ２０３）。そして、その保存したＱＲデータの関数式や抽出データを用いて、機能種別に応じた処理を行う（ステップＳ２０４）。例えば、関数テーブル機能の場合には、計算範囲について計算し、その計算結果であるテーブルを、通信部２５により通信ネットワークＮを介して送信元のカメラ付き電子機器Ｅに送信する。これにより、関数電卓１０の表示出力部１２に表示出力されたＱＲコードを撮影したカメラ付き電子機器Ｅでは、この計算結果であるテーブルを受信して、図６（Ｂ）または図６（Ｃ）に示すように、その表示出力部ＥＤに表示することができる。なお、図６（Ｂ）は図５（Ｇ）のＱＲデータから計算した結果を、図６（Ｃ）は図７（Ｇ）のＱＲデータから計算した結果を、それぞれ示している。
【００６８】
前記ステップＳ２０４の処理に続けて、ＣＰＵ２１は、数式、検出データ整合確認処理を実行する（ステップＳ２０５）。
【００６９】
図９は、この数式、検出データ整合確認処理のフローチャートを示している。
【００７０】
すなわち、この数式、検出データ整合確認処理において、ＣＰＵ２１は、まず、メモリ２２の受信ＱＲデータメモリ２２２に記憶された受信ＱＲデータにおける入力数式に変数が有るか否かを判別する。以下の処理では、入力数式には、関数式と初期値、終了値、ステップ値も含む（ステップＳ２０５Ａ）。ここで、入力数式（関数式と初期値、終了値、ステップ値）に変数が無いと判別した場合には、ＣＰＵ２１は、更に、入力数式に三角関数が含まれるか否かを判別する（ステップＳ２０３Ｂ）。ここで、三角関数が含まれないと判別した場合には、ＣＰＵ２１は、処理を上位のルーチンに戻す。
【００７１】
前記ステップＳ２０５Ａにおいて、例えば図５（Ｇ）のＱＲデータのように、変数が有ると判別した場合には、ＣＰＵ２１は、受信ＱＲデータメモリ２２２に記憶された受信ＱＲデータにおける抽出データに、値が「０」の変数が有るか否かを判別する（ステップＳ２０５Ｃ）。図５（Ｇ）のＱＲデータのように、値が「０」の変数が無いと判別した場合には、ＣＰＵ２１は、処理を前記ステップＳ２０５Ｂに進める。
【００７２】
これに対して、値が「０」の変数が有ると判別した場合には、前記ステップＳ２０４の処理結果が誤っている或いは処理不能であったとして、ＣＰＵ２１は、例えば値が「０」の変数がＡであったとすれば、「変数Ａの変数値が入力されていない可能性があります  入力する  Ｙｅｓ／Ｎｏ」等のメッセージを、通信部２５により通信ネットワークＮを介して送信元のカメラ付き通信機器Ｅに送信する（ステップＳ２０５Ｄ）。そして、通信部２５によりそのカメラ付き通信機器Ｅから「Ｙｅｓ」を受信したか否かを判別する（ステップＳ２０５Ｅ）。ここで、「Ｙｅｓ」を受信しない、つまり「Ｎｏ」を受信したと判別した場合には、ＣＰＵ２１は、処理を前記ステップＳ２０５Ｂに進める。
【００７３】
これに対して、「Ｙｅｓ」を受信したと判別した場合には、ＣＰＵ２１は、「変数Ａの変数値を入力してください」等のメッセージを、通信部２５により通信ネットワークＮを介して送信元のカメラ付き通信機器Ｅに送信する（ステップＳ２０５Ｆ）。このメッセージを受けたカメラ付き通信機器Ｅでは、そのメッセージを表示出力部ＥＤにアラーム表示として表示出力し、それを確認したユーザは、そのカメラ付き通信機器Ｅ上で不足している変数値を入力して、計算サーバ２０にその入力した変数値を送信する操作を実施することになる。従って、ＣＰＵ２１は、前記メッセージを送信後、通信部２５によりカメラ付き通信機器Ｅから変数値を受信するのを待つ（ステップＳ２０５Ｇ）。ここで、変数値を受信したならば、その受信した変数値をメモリ２２の対応する受信ＱＲデータメモリ２２２に書き込むことで、受信ＱＲデータを更新する（ステップＳ２０５Ｈ）。その後、ＣＰＵ２１は、処理を前記ステップＳ２０５Ｂに進める。
【００７４】
一方、前記ステップＳ２０５Ｂにおいて、例えば図７（Ｇ）のＱＲデータのように、三角関数が含まれると判別した場合には、ＣＰＵ２１は、受信ＱＲデータメモリ２２２に記憶された受信ＱＲデータにおける抽出データの角度モードが度（Ｄｅｇ）であるか否かを判別する（ステップＳ２０５Ｉ）。ここで、角度モードが度であると判別した場合には、ＣＰＵ２１は、関数の引数の設定値が、１５（度）の倍数であるか否かを判別する。なお関数の引数の設定値は、数式中で直接引数として入力されている設定値だけでなく、入力数式（関数式と初期値、終了値、ステップ値）の式中で各ステップ計算実行時に計算される引数の設定値を含む（ステップＳ２０５Ｊ）。そして、１５（度）の倍数であると判別した場合には、ＣＰＵ２１は、処理を上位のルーチンに戻す。これに対して、１５（度）の倍数ではないと判別した場合には、前記ステップＳ２０４の処理結果が誤っている或いは処理不能であったとして、ＣＰＵ２１は、処理を後述するステップＳ２０５Ｎに進める。
【００７５】
また、前記ステップＳ２０５Ｉにおいて、角度モードが度ではないと判別した場合には、ＣＰＵ２１は、角度モードがラジアン（Ｒａｄ）であるか否かを判別する（ステップＳ２０５Ｋ）。ここで、角度モードがラジアンであると判別した場合には、ＣＰＵ２１は、関数の引数の設定値が、π／１２（ラジアン）の倍数であるか否かを判別する（ステップＳ２０５Ｌ）。そして、π／１２（ラジアン）の倍数であると判別した場合には、ＣＰＵ２１は、処理を上位のルーチンに戻す。これに対して、π／１２（ラジアン）の倍数ではないと判別した場合には、前記ステップＳ２０４の処理結果が誤っている或いは処理不能であったとして、ＣＰＵ２１は、処理を後述するステップＳ２０５Ｎに進める。
【００７６】
また、前記ステップＳ２０５Ｋにおいて、角度モードがラジアンではないと判別した場合には、ＣＰＵ２１は、角度モードはグラード（Ｇｒａ）であると判別して、関数の引数の設定値が、５０／３（グラード）の倍数であるか否かを判別する（ステップＳ２０５Ｍ）。そして、５０／３（グラード）の倍数であると判別した場合には、ＣＰＵ２１は、処理を上位のルーチンに戻す。これに対して、５０／３（グラード）の倍数ではないと判別した場合には、前記ステップＳ２０４の処理結果が誤っている或いは処理不能であったとして、ＣＰＵ２１は、処理を後述するステップＳ２０５Ｎに進める。
【００７７】
そして、ステップＳ２０５Ｎにおいて、ＣＰＵ２１は、「（角度モードの）設定が間違っている可能性が有ります。○ＤＥＧ  ○ＲＡＤ  ○ＧＲＡ」等の修正画面（現在の角度モードの設定値は白丸ではなく黒丸とする）を、通信部２５により通信ネットワークＮを介して送信元のカメラ付き通信機器Ｅに送信する。
【００７８】
例えば、関数電卓１０において、図１０（Ａ）に示すように「ｆ（ｘ）＝ｓｉｎ（ｘ）」、図１０（Ｂ）に示すように「ｇ（ｘ）＝ｃｏｓ（ｘ）」という三角関数を、モードアイコン１２１が「Ｒ」となっていることで示されるように、角度モードがラジアン（Ｒａｄ）と設定した状態で入力し、図１０（Ｃ）に示すように初期値「０」、図１０（Ｄ）に示すように最終値「２７０」、図１０（Ｅ）に示すようにステップ「９０」を登録して、図１０（Ｆ）に示すようにＱＲコード化した場合、図１０（Ｇ）のようなＱＲデータが計算サーバ２０のメモリ２２の受信ＱＲデータメモリ２２２に記憶される。そして、この受信ＱＲデータにより前記ステップＳ２０４の処理を行うと、送信元のカメラ付き通信機器Ｅの表示出力部ＥＤには、図１１（Ａ）に示すようなテーブルが計算結果として表示されることになる。
【００７９】
この場合には、前記ステップＳ２０５Ｋにおいて角度モードがラジアン（Ｒａｄ）であると判別され、前記ステップＳ２０５Ｌにおいて関数の引数つまり計算範囲の設定値がπ／１２（ラジアン）の倍数でないと判別される。よって、このステップＳ２０５Ｎにおいて、修正画面がカメラ付き通信機器Ｅに送信され、図１１（Ａ）に示すようなアラーム表示ＡＬが通信機器Ｅの表示出力部ＥＤに表示出力されることになる。
【００８０】
このようなアラーム表示ＡＬを確認したユーザは、そのカメラ付き通信機器Ｅ上で、図１１（Ｂ）に示すように、正しい角度モードに設定を修正して、計算サーバ２０にその修正した設定値を送信する操作を実施する。
【００８１】
従って、計算サーバ２０のＣＰＵ２１は、前記ステップＳ２０５Ｎの処理を実行した後、通信部２５によりそのカメラ付き通信機器Ｅから設定値を受信するのを待つ（ステップＳ２０５Ｏ）。ここで、設定値を受信したならば、その受信した設定値にメモリ２２の対応する受信ＱＲデータメモリ２２２の角度モードを更新する（ステップＳ２０５Ｐ）。その後、ＣＰＵ２１は、処理を上位のルーチンに戻す。
【００８２】
以上のようなステップＳ２０５の数式、検出データ整合確認処理を終了したならば、ＣＰＵ２１は、メモリの受信ＱＲデータメモリ２２２にデータ更新が有ったか否かを判別する（ステップＳ２０６）。データ更新が無かったと判別した場合には、ＣＰＵ２１は、このＱＲデータ処理を終了して、前記ステップＳ２０１に処理を戻す。
【００８３】
これに対して、データ更新が有ったと判別した場合には、ＣＰＵ２１は、その更新後のＱＲデータの関数式や抽出データを用いて、機能種別に応じた処理を行う（ステップＳ２０７）。例えば、関数テーブル機能の場合には、計算範囲について再計算し、その計算結果であるテーブルを、通信部２５により通信ネットワークＮを介して送信元のカメラ付き電子機器Ｅに再送信する。これにより、変数値を入力または設定値を修正したカメラ付き電子機器Ｅでは、この再送信されてきた計算結果であるテーブルを受信して、例えば図１１（Ｃ）に示すように、その表示出力部ＥＤに表示することができる。その後、ＣＰＵ２１は、このＱＲデータ処理を終了して、前記ステップＳ２０１に処理を戻す。
【００８４】
なお、以上の説明は、関数式の計算を計算サーバ２０で実行する場合を例に説明したが、計算サーバ２０の機能をカメラ付き通信機器Ｅ、例えばスマートフォンで実現可能なアプリケーションの形で提供しても良いことは勿論である。
【００８５】
したがって、前記構成の関数電卓１０によれば、変数値メモリ１４５に、数式に含めることが可能な複数の変数について変数値をそれぞれ記憶し、ユーザのキー入力部１１の操作に応じて、数式が入力され、ＣＰＵ１３は、前記変数値メモリ１４５に記憶された変数値のうち、前記入力された数式に含まれる変数を検出し、前記入力された数式と前記検出された変数の変数値とを、表示出力部１２により外部出力する。
【００８６】
これにより、関数電卓１０でユーザ操作により入力された数式を、当該数式の計算に必要な変数値と一緒に出力することができる。よって、通信機器や計算サーバで、その数式を計算することが可能になる。
【００８７】
なお、ＣＰＵ１３は、ユーザ操作に応じて、前記変数値メモリ１４５に記憶されたいずれかの変数の変数値を設定する。
【００８８】
これにより、ユーザが変数値を設定できるようになる。
【００８９】
また、関数電卓１０は、数式の計算表示についての複数種類の設定データをそれぞれ記憶している設定データメモリ１４４を備え、ＣＰＵ１３は、この設定データメモリ１４４に記憶された複数種類の設定データのいずれか又は複数を、前記数式の計算に必要な設定データとして抽出する。そして、前記入力された数式と前記検出された変数の変数値と、前記抽出された複数種類の設定データのいずれか又は複数と、を表示出力部１２により外部出力する。
【００９０】
これにより、前記数式および前記変数に加えて、当該数式の計算に必要な設定データも一緒に出力することができる。
【００９１】
さらに、ＣＰＵ１３は、前記入力された数式中に三角関数が含まれる場合に、当該数式の三角関数計算に関する角度モード設定データを、前記数式の計算に必要な設定データとして抽出する。
【００９２】
これにより、三角関数が含まれる数式を通信機器や計算サーバで、その数式を計算することが可能になる。
【００９３】
また、前記入力された数式と前記検出された設定データ又は変数値との外部出力は、それらを２次元コード化して表示することで行うことができる。
【００９４】
これにより、関数電卓１０に有線又は無線通信機能を実装する必要が無く、安価に関数電卓１０を提供できる。
【００９５】
また、前記構成の計算サーバ２０によれば、数式処理装置である関数電卓１０から外部出力された、数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとを通信部２５により受信し、ＣＰＵ２１は、この受信された、数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとに基づいて、前記数式の計算を行い、その計算結果を前記通信部２５により送信する。また、前記受信された、数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとが整合しない場合には、ＣＰＵ２１は、整合しない旨の情報を通信部２５より送信する。そして、前記数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとが整合しない場合に、修正された変数値又は設定データを前記通信部２５で受信することができる。
【００９６】
これにより、関数電卓１０でユーザ操作により出力された数式と、当該数式に含まれる変数の変数値又は当該数式の計算に必要な設定データとを受信して、その数式を計算することが可能になる。また、前記数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとが整合しない場合には、修正された変数値又は設定データを受信することができる。
【００９７】
また、通信部２５は、前記関数電卓１０において２次元コード化された前記数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとを含むデータを、前記２次元コードを撮影して取得するカメラ付き通信機器Ｅから受信する。
【００９８】
これにより、関数電卓１０に当該計算サーバ２０と通信する通信機能を実装する必要が無く、安価に関数電卓１０を提供できる。
【００９９】
また、ＣＰＵ２１は、前記数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとが整合しない場合に、前記受信された数式と、前記受信された前記修正された変数値又は設定データと、に基づいて、前記数式の計算を行い、その計算結果を通信部２５により再送信する。
【０１００】
これにより、修正した計算結果を提供することができる。
【０１０１】
なお、前記入力された数式と前記検出された設定データ又は変数値との外部出力に関しては、表示出力部１２による表示出力に限定するものではなく、図２に破線で示すように、無線通信部１６による無線出力としても良いことは勿論である。この場合には、カメラ付き通信機器Ｅは、前記外部出力された数式と設定データ又は変数値とを内蔵する無線通信部（図示せず）により受信して、通信ネットワークＮを介して計算サーバ２０に送信することとなる。
【０１０２】
［第２実施形態］
次に、本発明の第２実施形態を説明する。
【０１０３】
数式処理装置としての関数電卓１０には、計算結果をグラフ表示可能に構成された、グラフ関数電卓と称されるものも知られている。本第２実施形態は、そのようなグラフ関数電卓に本発明を適用した場合の例である。
【０１０４】
グラフ関数電卓の電子回路の構成自体は、図２に示した第１実施形態の関数電卓１０と同様である。
【０１０５】
このグラフ関数電卓においては、図１２（Ａ）に示すように、関数をＹ１＝ｓｉｎ（ｘ），Ｙ２＝ｃｏｓ（ｘ）と入力し、計算範囲を入力して、［ＱＲ］キーを押すことで、図１２（Ｂ）に示すように、前述の第１実施形態と同様にして、計算サーバ２０のアドレス、当該関数電卓１０の固有ＩＤ、機能種別（例えば、関数テーブル機能）、機能別計算データ（関数式と計算範囲）、抽出データ（例えば角度モード）、その他をＱＲコード化して、表示出力部１２に表示出力することができる。このＱＲコードの内容（ＱＲデータ）は、例えば図１２（Ｃ）のようになる。なお、ここでは、角度モードはラジアン（Ｒａｄ）に設定しているものとする。このようなＱＲデータに基づく計算サーバ２０での前記ステップＳ２０４の処理の結果として、カメラ付き電子機器Ｅでは、この計算結果であるテーブルを、図１２（Ｄ）に示すように、その表示出力部ＥＤに表示することになる。
【０１０６】
本第２実施形態では、グラフ関数電卓と同様に、カメラ付き電子機器Ｅにおいてもグラフ表示に切り替えることができる。これは、計算サーバ２０におけるサーバ処理において、前記ステップＳ２０４とステップＳ２０５との間に、図８（Ｂ）に示すような処理を追加することで実現している。
【０１０７】
すなわち、前記ステップＳ２０４の処理に続けて、ＣＰＵ２１は、通信部２５によりカメラ付き通信機器Ｅから表示切替の指示を受信したか否かを判別する（ステップＳ２０８）。表示切替の指示を受信していないと判別した場合には、ＣＰＵ２１は、処理を前記ステップＳ２０５に進める。
【０１０８】
これに対して、表示切替の指示を受信したと判別した場合には、ＣＰＵ２１は、表示切替後の、関数式や抽出データを用いての機能種別に応じた処理を行う（ステップＳ２０９）。すなわち、前記ステップＳ２０４では、ＱＲデータで示されるステップで計算を行っているため、離散的な計算結果しか得られておらず、よって、グラフ表示を行うことはできない。そこで、より細かいステップで再計算を行って、グラフ表示用の計算結果を得、その計算結果からグラフデータを生成して、通信部２５により通信ネットワークＮを介して送信元のカメラ付き電子機器Ｅに送信する。これにより、グラフ関数電卓の表示出力部１２に表示出力されたＱＲコードを撮影したカメラ付き電子機器Ｅでは、この計算結果であるグラフデータを受信して、図１２（Ｅ）に示すように、その表示出力部ＥＤに表示することができる。
【０１０９】
その後、ＣＰＵ２１は、処理を前記ステップＳ２０５の数式、検出データ整合確認処理へと進める。
【０１１０】
そして、図１２（Ｃ）のＱＲデータでは、角度モードがラジアン（Ｒａｄ）であり、計算範囲の設定値がπ／１２（ラジアン）の倍数でないので、前記第１実施形態と同様の処理により、ステップＳ２０５Ｎにおいて、修正画面がカメラ付き通信機器Ｅに送信され、図１３（Ａ）に示すようなアラーム表示ＡＬが通信機器Ｅの表示出力部ＥＤに表示出力されることになる。このようなアラーム表示ＡＬを確認したユーザが、そのカメラ付き通信機器Ｅ上で、図１３（Ｂ）に示すように、正しい角度モードに設定を修正して、計算サーバ２０にその修正した設定値を送信する操作を実施することで、ＣＰＵ２１は、前記ステップＳ２０５Ｐで、受信した設定値にメモリ２２の対応する受信ＱＲデータメモリ２２２の角度モードを更新し、前記ステップＳ２０７において、その更新後のＱＲデータの関数式や抽出データを用いて、機能種別に応じた処理を行う。すなわち、ＣＰＵ２１は、再計算を行って、計算結果としてグラフデータを得、通信部２５により通信ネットワークＮを介して送信元のカメラ付き電子機器Ｅに計算結果を再送信する。これにより、カメラ付き電子機器Ｅでは、この再送信されてきた計算結果であるグラフデータを受信して、例えば図１３（Ｃ）に示すように、その表示出力部ＥＤに表示することができる。
【０１１１】
なお、ここでは、最初にテーブル表示が設定されており、グラフ表示に表示切替を行うものとして説明したが、その逆に、最初にグラフ表示が設定されており、テーブル表示に表示切替を行うことも可能なことは言うまでも無い。
【０１１２】
また、前記第１実施形態同様、以上の説明は、関数式の計算を計算サーバ２０で実行する場合を例に説明したが、計算サーバ２０の機能をカメラ付き通信機器Ｅ、例えばスマートフォンで実現可能なアプリケーションの形で提供しても良いことは勿論である。
【０１１３】
なお、前記各実施形態において記載した関数電卓１０およびグラフ関数電卓による各処理の手法、すなわち、図４のフローチャートに示す表示制御処理、図６（Ａ）のフローチャートに示す必要情報検出処理などの各手法は、何れもコンピュータに実行させることができるプログラムとして、メモリカード（ＲＯＭカード、ＲＡＭカード等）、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ等）、半導体メモリ等の外部記録媒体（Ｍ）に格納して配布することができる。
【０１１４】
また、前記各実施形態において記載した計算サーバ２０による各処理の手法、すなわち、図８（Ａ）のフローチャートに示すサーバ処理、図８（Ｂ）のフローチャートに示すサーバ処理、図９のフローチャートに示す数式、検出データ整合確認処理などの各手法は、何れもコンピュータに実行させることができるプログラムとして、メモリカード（ＲＯＭカード、ＲＡＭカード等）、磁気ディスク（フロッピーディスク、ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ等）、半導体メモリ等の記録媒体（２３）に格納して配布することができる。また、前記各手法を実現するためのプログラムのデータは、プログラムコードの形態として通信ネットワークＮ上を伝送させることができ、このプログラムデータを、通信ネットワークＮに接続された電子機器のコンピュータに通信部（２５）によって取り込むことで、前述したサーバ機能を実現することもできる。
【０１１５】
本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
【０１１６】
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。  
［１］
数式に含めることが可能な複数の変数について変数値をそれぞれ記憶する変数値記憶手段と、
ユーザ操作に応じて、数式が入力される数式入力手段と、
前記変数値記憶手段に記憶された変数値のうち、前記数式入力手段により入力された数式に含まれる変数を検出する変数検出手段と、
前記数式入力手段により入力された数式と前記変数検出手段により検出された変数の変数値とを外部出力する出力手段と、
を備える数式処理装置。
［２］
ユーザ操作に応じて、前記変数値記憶手段に記憶されたいずれかの変数の変数値を設定する変数値設定手段を備える［１］に記載の数式処理装置。
［３］
数式の計算表示についての複数種類の設定データをそれぞれ記憶している設定データ記憶手段と、
前記設定データ記憶手段に記憶された複数種類の設定データのいずれか又は複数を、前記数式の計算に必要な設定データとして抽出する必要データ抽出手段と、
を備え、
前記出力手段は、前記数式入力手段により入力された数式と前記変数検出手段により検出された変数の変数値と、前記必要データ抽出手段により抽出された複数種類の設定データのいずれか又は複数と、を外部出力することを特徴とする、
請求項［１］又は［２］に記載の数式処理装置。
［４］
前記必要データ抽出手段は、前記数式入力手段によって入力された数式中に三角関数が含まれる場合に、当該数式の三角関数計算に関する角度モード設定データを、前記数式の計算に必要な設定データとして抽出する、ことを特徴とする［３］に記載の数式処理装置。
［５］
前記出力手段は、前記数式入力手段によって入力された数式と前記変数検出手段により検出された変数の変数値とを含むデータを２次元コード化して表示して外部出力する２次元コード表示出力手段を備える、
ことを特徴とする請求項［１］乃至［４］のいずれか１項に記載の数式処理装置。
［６］
数式処理装置から外部出力された、数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとを受信する受信手段と、
前記受信手段により受信された、数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとに基づいて、前記数式の計算を行い、その計算結果を送信する計算結果送信手段と、
前記受信手段により受信された、数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとが整合しない場合に、整合しない旨の情報を送信する不整合情報送信手段と、
前記数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとが整合しない場合に、修正された変数値又は設定データを受信する修正データ受信手段と、
を備える計算サーバ。
［７］
前記受信手段は、前記数式処理装置において２次元コード化された前記数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとを含むデータを、前記２次元コードを撮影して取得する通信機器から受信する、
ことを特徴とする［６］に記載の計算サーバ。
［８］
前記数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとが整合しない場合に、前記受信手段により受信された数式と、前記修正データ受信手段により受信された前記修正された変数値又は設定データと、に基づいて、前記数式の計算を行い、その計算結果を送信する計算結果再送信手段をさらに備える、
ことを特徴とする請求項［６］又は［７］に記載の計算サーバ。
［９］
電子機器のコンピュータを制御するためのプログラムであって、
前記コンピュータを、
数式に含むことが可能な複数の変数について変数値をそれぞれ記憶する変数値記憶手段、
ユーザ操作に応じて、数式が入力される数式入力手段、
前記変数値記憶手段に記憶された変数値のうち、前記数式入力手段により入力された数式に含まれる変数の変数値を検出する変数検出手段、
前記数式入力手段により入力された数式と前記変数検出手段により検出された変数の変数値とを外部出力する出力手段、
として機能させるためのコンピュータ読み込み可能なプログラム。
［１０］
電子機器のコンピュータを制御するためのプログラムであって、
前記コンピュータを、
数式処理装置から外部出力された、数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとを受信する受信手段、
前記受信された、数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとに基づいて、前記数式の計算を行い、その計算結果を送信する計算結果送信手段、
前記受信された、数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとが整合しない場合に、整合しない旨の情報を送信する不整合情報送信手段、
前記数式と前記数式に含まれる変数の変数値又は前記数式の計算に必要な設定データとが整合しない場合に、修正された変数値又は設定データを受信する修正データ受信手段、
として機能させるためのコンピュータ読み込み可能なプログラム。
【符号の説明】
【０１１７】
１０  …関数電卓
１１  …キー入力部
１１１…数値・演算記号キー群
１１２…関数機能キー群
１１３…モード設定キー群
１１４…カーソルキー
１２  …表示出力部
１２１…モードアイコン
１３  …ＣＰＵ
１４  …メモリ
１４１…数式計算処理プログラム
１４２…固有ＩＤ
１４３…計算サーバアドレス
１４４…設定データメモリ
１４５…変数値メモリ
１４６…実行機能メモリ
１４７…数式データメモリ
１４８…その他データメモリ
１４９…ワークエリア
１５  …記録媒体読取部
１６  …無線通信部
２０  …計算サーバ
２１  …ＣＰＵ
２２  …メモリ
２２１…サーバ制御プログラム
２２２…受信ＱＲデータメモリ
２３  …記録媒体
２４  …記録媒体読取部
２５  …通信部
２６  …キー入力部
２７  …表示出力部
Ｅ    …カメラ付き通信機器
ＥＤ  …表示出力部
Ｍ    …外部記録媒体
Ｎ    …通信ネットワーク
Ｐ    …プロジェクタ
【図１】
0006314763.tif 000002
【図２】
0006314763.tif 000003
【図３】
0006314763.tif 000004
【図４】
0006314763.tif 000005
【図５】
0006314763.tif 000006
【図６】
0006314763.tif 000007
【図７】
0006314763.tif 000008
【図８】
0006314763.tif 000009
【図９】
0006314763.tif 000010
【図１０】
0006314763.tif 000011
【図１１】
0006314763.tif 000012
【図１２】
0006314763.tif 000013
【図１３】
0006314763.tif 000014