(57)【要約】【課題】外部機器から取得した内容を基に正しい演算結果が得られる電子機器、電子機器の制御方法、及び電子機器の制御プログラムを提供する。【解決手段】電子機器１０は、ハードウエアキーを備えるキー入力部１１と、スマートデバイス５０と通信するための通信部１７と、表示のために少なくともキー入力部から入力された数値が格納される置数入力用エリア２５、スマートデバイスから転送された少なくとも数値が格納されるキー転送用メモリ格納エリア３１及び演算に用いられる確定された置数が格納される置数格納エリア３３を有するメモリ２１とを有する。電子機器は更に、置数入力用エリアに格納された値を表示する表示部１３と、転送された値をキー転送用メモリ格納エリアに格納した後に、キー転送用メモリ格納エリアに格納された値を、置数格納エリアに格納すると共に、置数入力用エリアに格納するプロセッサ１９とを有する。【選択図】図２
2020047035.tif 000002
【特許請求の範囲】
【請求項１】
入力用キーを備えるキー入力部と、
外部機器と通信するための通信部と、
表示のために少なくとも前記キー入力部から入力された数値が格納される置数入力用エリアと、前記外部機器から転送された少なくとも数値が格納されるキー転送用メモリ格納エリアと、演算に用いられる確定された置数が格納される置数格納エリアと、を有するメモリと、
前記外部機器から転送された値を前記キー転送用メモリ格納エリアに格納した後に、前記キー転送用メモリ格納エリアに格納された前記値を、前記置数格納エリアに格納するとともに、前記置数入力用エリアに格納する処理を行うプロセッサと、
を具備する電子機器。
【請求項２】
前記置数入力用エリアに格納された値を表示する表示部をさらに備えた請求項１に記載の電子機器。
【請求項３】
前記プロセッサは、前記外部機器から転送された前記値を一旦前記置数入力用エリアに格納した後に、前記置数入力用エリアに格納された前記値を前記キー転送用メモリ格納エリアに転送する処理を行う請求項２に記載の電子機器。
【請求項４】
前記プロセッサは、
前記外部機器から転送された前記値を前記キー転送用メモリ格納エリアに格納する前に前記キー転送用メモリ格納エリアに格納されている値をクリアする処理を行い、
前記表示部が前記置数入力用エリアに格納された前記値を表示可能かを判定する処理を行い、
表示可能であれば前記置数入力用エリアに格納された前記値を前記キー転送用メモリ格納エリアに格納し、
表示不可であれば前記置数入力用エリアに格納された前記値を前記キー転送用メモリ格納エリアに格納しない処理を行う請求項３に記載の電子機器。
【請求項５】
前記メモリは、更に、数値が格納される独立メモリ格納エリアを有し、
前記プロセッサは、
前記キー入力部のメモリ格納キーからの入力に応じて、前記置数入力用エリアに格納された前記数値を処理した数値を前記独立メモリ格納エリアに格納し、
前記キー入力部のメモリ読出キーからの入力に応じて、前記独立メモリ格納エリアに格納された前記数値を、前記置数入力用エリアと前記置数格納エリアとに格納する処理を行い、
前記キー転送用メモリ格納エリアに格納された前記値を前記置数格納エリアと前記置数入力用エリアに格納する処理は、前記独立メモリ格納エリアに格納された前記数値を前記置数入力用エリアと前記置数格納エリアとに格納する処理と共通した処理である請求項１に記載の電子機器。
【請求項６】
前記メモリは、更に、基準日を格納する基準日格納エリアを有し、
前記プロセッサは、
前記置数格納エリアに格納された前記置数と前記基準日とを基に日付を計算する処理を行い、
計算された前記日付を前記置数入力用エリアと前記置数格納エリアとに格納する処理を行う請求項１に記載の電子機器。
【請求項７】
前記入力用キーは、ハードウエアキーである請求項１に記載の電子機器。
【請求項８】
前記外部機器は、スマートデバイスである請求項１に記載の電子機器。
【請求項９】
入力用キーを備えるキー入力部と、外部機器と通信するための通信部と、表示のために少なくとも前記キー入力部から入力された数値が格納される置数入力用エリア、前記外部機器から転送された少なくとも数値が格納されるキー転送用メモリ格納エリア及び演算に用いられる確定された置数が格納された置数格納エリアを有するメモリと、前記キー入力部、前記通信部及び前記メモリを制御するプロセッサと、を具備する電子機器の制御方法であって、
前記プロセッサにより、前記外部機器から転送された値を前記キー転送用メモリ格納エリアに格納することと、
前記プロセッサにより、前記キー転送用メモリ格納エリアに格納された前記値を、前記置数格納エリアに格納するとともに、前記置数入力用エリアに格納することと、
を含む制御方法。
【請求項１０】
入力用キーを備えるキー入力部と、外部機器と通信するための通信部と、メモリと、プロセッサと、を具備する電子機器の制御プログラムであって、
前記外部機器から転送された値を前記メモリのキー転送用メモリ格納エリアに格納させることと、
前記キー転送用メモリ格納エリアに格納された前記値を、演算に用いられる確定された置数が格納される前記メモリの置数格納エリアに格納させるとともに、表示のために少なくとも前記キー入力部から入力された数値が格納される前記メモリの置数入力用エリアに格納させることと、
をコンピュータに実行させる電子機器の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器、電子機器の制御方法、及び電子機器の制御プログラムに関する。
【背景技術】
【０００２】
例えば特許文献１に開示されている電子式卓上計算機（以下、電卓と称する)には、ハードウエアキーが配置されている。このハードウエアキーは、キーの押し間違いが防止され、押し感が得られ易く、ブラインドタッチによる入力も簡単といった、入力に関してユーザーフレンドリーな仕様となっている。
【０００３】
一方近年では、スマートフォン等のスマートデバイス（外部機器）が普及し、このスマートデバイスのアプリケーションソフトウエアとして電卓ソフトウエアも提供されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−６６０１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
スマートデバイスは一般に、ハードウエアキーを備えていないため、入力がし難いという問題がある。そこで、ハードウエアキーを備えた電卓等の電子機器をスマートデバイスの入力装置として利用することが考えられる。この場合、スマートデバイスの処理結果を電子機器にフィードバックし、電子機器がスマートデバイスの処理結果を用いた動作を引き継ぐことができれば、電子機器を単に入力装置として使用できるだけでなく、電子機器の利用価値も向上する。
【０００６】
具体的には、例えば、電卓がスマートデバイスから転送されてくる演算結果等の処理結果を受信し、この受信した処理結果に対して更に演算を行うこと等が考えられる。
【０００７】
本発明は、外部機器から取得した内容を基に正しい演算結果が得られる電子機器、電子機器の制御方法、及び電子機器の制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一実施形態は、入力用キーを備えるキー入力部と、外部機器と通信するための通信部と、表示のために少なくとも前記キー入力部から入力された数値が格納される置数入力用エリアと、前記外部機器から転送された少なくとも数値が格納されるキー転送用メモリ格納エリアと、演算に用いられる確定された置数が格納される置数格納エリアと、を有するメモリと、前記外部機器から転送された値を前記キー転送用メモリ格納エリアに格納した後に、前記キー転送用メモリ格納エリアに格納された前記値を、前記置数格納エリアに格納するとともに、前記置数入力用エリアに格納する処理を行うプロセッサと、を具備する電子機器である。
【０００９】
本発明の一実施形態は、入力用キーを備えるキー入力部と、外部機器と通信するための通信部と、表示のために少なくとも前記キー入力部から入力された数値が格納される置数入力用エリア、前記外部機器から転送された少なくとも数値が格納されるキー転送用メモリ格納エリア及び演算に用いられる確定された置数が格納された置数格納エリアを有するメモリと、前記キー入力部、前記通信部及び前記メモリを制御するプロセッサと、を具備する電子機器の制御方法であって、前記プロセッサにより、前記外部機器から転送された値を前記キー転送用メモリ格納エリアに格納することと、前記プロセッサにより、前記キー転送用メモリ格納エリアに格納された前記値を、前記置数格納エリアに格納するとともに、前記置数入力用エリアに格納することと、を含む制御方法である。
【００１０】
本発明の一実施形態は、入力用キーを備えるキー入力部と、外部機器と通信するための通信部と、メモリと、プロセッサと、を具備する電子機器の制御プログラムであって、前記外部機器から転送された値を前記メモリのキー転送用メモリ格納エリアに格納させることと、前記キー転送用メモリ格納エリアに格納された前記値を、演算に用いられる確定された置数が格納される前記メモリの置数格納エリアに格納させるとともに、表示のために少なくとも前記キー入力部から入力された数値が格納される前記メモリの置数入力用エリアに格納させることと、をコンピュータに実行させる電子機器の制御プログラムである。
【発明の効果】
【００１１】
本発明によれば、外部機器から取得した内容を基に正しい演算結果が得られる電子機器、電子機器の制御方法、及び電子機器の制御プログラムを提供することができる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施形態に係る電子機器としての電卓と、該電卓に対しデータ通信を行うスマートフォンとのそれぞれの外観構成を示す正面図である。
【図２】図１に示される電卓とスマートフォンとのそれぞれの電子回路の構成を示すブロック図である。
【図３Ａ】電卓の動作を示すフローチャートである。
【図３Ｂ】電卓の動作を示すフローチャートである。
【図４】電卓のキー入力部からの入力データに応じた電卓のメモリの各エリアの格納手順について説明する図である。
【図５】スマートフォンの動作を示すフローチャートである。
【図６】受信データ制御処理を示すフローチャートである。
【図７】スマートフォンからの受信データと電卓のキー入力部からの入力データとに応じた電卓のメモリの各エリアの格納手順について説明する図である。
【図８】スマートフォンからの受信データと電卓のキー入力部からの入力データとに応じた電卓のメモリの各エリアの格納手順について説明する図である。
【図９】第２の実施形態に係る電子機器としての電卓と、該電卓に対しデータ通信を行うスマートフォンとのそれぞれの外観構成を示す正面図である。
【図１０】図９に示される電卓とスマートフォンとのそれぞれの電子回路の構成を示すブロック図である。
【図１１】日付計算の処理を示すフローチャートである。
【図１２】スマートフォンからの受信データと電卓のキー入力部からの入力データとに応じた電卓のメモリの各エリアの格納手順について説明する図である。
【発明を実施するための形態】
【００１３】
本発明の実施形態について、図面を参照して説明する。なお、一部の図面では明瞭化のために部材の一部を省略して示している。
【００１４】
［第１の実施形態]
以下に、第１の実施形態について説明する。図１は、電子機器としての電子式卓上計算機（以下、電卓１０と称する)と、電卓１０に対しデータ通信を行うスマートフォン５０とのそれぞれの外観構成を示す正面図である。
【００１５】
電卓１０は、例えばBluetooth（登録商標） Low Energy（以下、ＢＬＥと称する）といった近距離無線通信技術等を用いて、スマートフォン５０とデータ通信を行う。電卓１０はデータ通信可能な電子機器の一例であり、電卓１０の代わりにハードウエアキーと計算機能を有する他の機器が用いられてもよい。スマートフォン５０はデータ通信可能なスマートデバイスの一例であり、スマートフォン５０の代わりに例えばタブレット端末等が用いられてもよい。
【００１６】
電卓１０の本体正面には、キー入力部１１及び表示部１３が設けられている。
【００１７】
キー入力部１１は、例えば、数値キー１１ａと演算キー１１ｂと第１機能キー１１ｃと第２機能キー１１ｄとを含むハードウエアキー群を有している。
【００１８】
数値キー１１ａは、例えば、［００］，［０］〜［９］のそれぞれに対応する複数のキーを有している。演算キー１１ｂは、例えば、［＋］（加算）と、［−］（減算）と、［×］（乗算）と、［÷］（除算）と、［＝］（イコール）とのそれぞれに対応する複数のキーを有している。第１機能キー１１ｃは、例えば、オールクリアキー（［ＡＣ］キー）と、クリアキー（［Ｃ］キー）と、メモリ機能に関する複数のメモリキー１１ｇ（［ＭＣ］，［ＭＲ］，［Ｍ＋］［Ｍ−］）と、グランドトータルキー（［ＧＴ］キー）とを有している。第２機能キー１１ｄは、電卓１０がＢＬＥを用いてスマートフォン５０とデータ通信を行う際に電卓１０がスマートフォン５０と同期するために操作されるＢＬＥキー１１ｅと、上下左右それぞれの方向に対応する複数の方向キー（上キー、下キー、左キー、右キー、）と、バックスペース（［ＢＳ］）キーと、エンターキー（［Ｅｎｔｅｒ］）とを有している。
【００１９】
これらのキーは、ユーザの押圧操作により押下されることで当該キートップに表記（印刷）された内容を電卓１０内の演算処理系統に入力する押圧（ストローク）キーの構造を有する。
【００２０】
表示部１３は、ドットマトリクス型あるいはセグメント型（例えば、所謂日の字型）の液晶表示ユニットからなる。表示部１３には、数値キー１１ａ及び演算キー１１ｂに対する押下操作により入力された数値及び演算子、メモリキー１１ｇに対応する記号（Ｍ）、グランドトータルキーに対応する記号（ＧＴ）、スマートフォン５０との間でＢＬＥにより接続中であることを示す記号（ＢＬＥ）等が表示される。
【００２１】
スマートフォン５０の本体正面には、スマートフォン５０に数値や文字などの情報を入力するためのタッチパネル５１と、タッチパネル５１から入力された情報を表示する表示部５３とが設けられている。タッチパネル５１は、表示部５３に載置されている。
【００２２】
図２は、図１に示される電卓１０とスマートフォン５０とのそれぞれの電子回路の構成を示すブロック図である。
【００２３】
電卓１０とスマートフォン５０との電子回路は複数のユニットを備えており、このユニットは、通信部１７，５７と、コンピュータを構成するプロセッサであるＣＰＵ（Central Processing Unit）１９，５９及びメモリ２１，６１とを含む。電卓１０のユニットはまた、上記キー入力部１１と表示部１３とを含み、スマートフォン５０のユニットはまた、上記タッチパネル５１と表示部５３とを含む。
【００２４】
電卓１０の通信部１７は、ＢＬＥキー１１ｅが押されると、ＢＬＥを用いてスマートフォン５０の通信部５７と無線によるデータ通信を行う通信インターフェースである。通信部１７，５７は、通信ネットワーク（インターネット等を含む）上のサーバを介してデータ通信してもよい。また、通信部１７が有線によるシリアル通信機能しか有していない場合には、通信部１７にＢＬＥユニットを接続して、該ＢＬＥユニットを介することにより無線でのデータ通信を行えるようにしても良い。
【００２５】
電卓１０のＣＰＵ１９は、電卓１０のメモリ２１に記憶された計算処理プログラム２３を実行することにより、回路各部の動作を制御し、キー入力部１１からの入力に応じた各種の演算処理を実行する。なお、計算処理プログラム２３では、例えば、演算子を表示部１３で所謂シンボル表示するための変数等が設定されており、ＣＰＵ１９により、キー入力部１１から入力された演算子の種類に応じたシンボル等が表示部１３で表示可能とされている。
【００２６】
計算処理プログラム２３は、メモリ２１に予め記憶されているものであるが、通信部１７を介してスマートフォン５０から又は通信ネットワーク上のサーバからダウンロードされて、メモリ２１に記憶されるものであっても良い。また、計算処理プログラム２３は、図示しない記録媒体読取部を介してメモリカード等の外部記録媒体から読み込まれて、メモリ２１に記憶されるものであっても良い。
【００２７】
メモリ２１には、置数入力用エリア２５と、ＧＴ独立メモリ格納エリア２７と、Ｍ独立メモリ格納エリア２９と、キー転送用メモリ格納エリア３１と、置数格納エリア３３と、演算子情報エリア３５とが確保されている。
【００２８】
置数入力用エリア２５は、表示部１３に表示させるための値（数値）が格納されるエリアである。数値キー１１ａが押された場合には、数値キー１１ａのキートップに表記された数値を示すキーコード（数値コード）が１要素として置数入力用エリア２５に格納される。
【００２９】
ＧＴ独立メモリ格納エリア２７には、［ＧＴ］キーの操作によって表示部１３に表示される数値が格納される。
【００３０】
Ｍ独立メモリ格納エリア２９は、メモリキー１１ｇ（メモリ格納キーである［Ｍ＋］［Ｍ−］キー）の押下操作に対応して、Ｍ独立メモリ格納エリア２９に既に格納している数値と、メモリキー１１ｇの押下操作時に置数入力用エリア２５に格納されている数値との演算結果を格納するためのエリアである。メモリキー１１ｇ（［Ｍ＋］［Ｍ−］キー）が押下操作されると、Ｍ独立メモリ格納エリア２９には、Ｍ独立メモリ格納エリア２９に既に格納されている数値に置数入力用エリア２５に格納された数値を演算（加算又は減算）した数値が上書き格納される。
【００３１】
キー転送用メモリ格納エリア３１は、所定の条件が満たされた場合に、スマートフォン５０から転送されたデータを格納するためのエリアである。スマートフォン５０から値（数値）が転送されると、所定の条件が満たされた場合に、キー転送用メモリ格納エリア３１には、その値（数値）が格納される。キー転送用メモリ格納エリア３１は、スマートフォン５０からデータが転送されて所定の条件が満たされた場合に、Ｍ独立メモリ格納エリア２９に相当するエリアとして使用されるものである。
【００３２】
置数格納エリア３３は、演算に用いられる確定された置数（数値）が格納される。
【００３３】
演算子情報エリア３５は、演算に用いられる演算子が格納される。
【００３４】
スマートフォン５０のＣＰＵ５９は、スマートフォン５０のメモリ６１に記憶された計算処理プログラムを実行することにより、回路各部の動作を制御し、タッチパネル５１からの入力に応じた各種の演算処理を実行する。
【００３５】
次に本実施形態における電卓１０の動作について説明する。図３Ａと図３Ｂとは、電卓１０の動作を示すフローチャートである。ここでは、電卓１０のＣＰＵ１９により、キー入力部１１から入力された入力データ、又はスマートフォン５０から転送された受信データを取得し、取得したデータの種類（例えば、数値、演算子、メモリ機能の情報、スマートフォンから受信したデータ等）に応じて、後述の処理を行う。なお、動作時においては、ＢＬＥキー１１ｅが一度押されて、電卓１０はスマートフォン５０と同期しているものとする。
【００３６】
ステップＳ１において、ＣＰＵ１９は、キー入力部１１から入力された入力データ、又はスマートフォン５０から転送された受信データを取得する。取得したデータは、例えば図示しないキー入力バッファや受信バッファなどのデータ一時保存部に保持される。ここでいう入力データとは、キー入力部１１のキートップに表記された値（数値）や演算子（例えば、「１」、「＋」、「ＡＣ」、［Ｍ＋］、［ＢＳ］等）である。つまり入力データは、数値、演算子、「ＡＣ」，［Ｍ＋］，［ＢＳ］などの各種機能の情報である。また、受信データは、例えば、数値や演算子である。
【００３７】
次にステップＳ２において、ＣＰＵ１９は、ＡＣキーが押されたかをチェックする。ステップＳ２において、ＣＰＵ１９は、ＡＣキーが押されたと判定した場合、ステップＳ３の処理に移行する。ステップＳ３において、ＣＰＵ１９は、置数入力用エリア２５及び置数格納エリア３３の格納内容をそれぞれクリア（消去）する。これにより置数入力用エリア２５及び置数格納エリア３３は、「０」を格納した状態となる。次にステップＳ４において、ＣＰＵ１９は、表示部１３に、置数入力用エリア２５に格納された数値（この場合は「０」）を表示させる。ステップＳ５において、ＣＰＵ１９は、通信部１７を介してスマートフォン５０に置数入力用エリア２５に格納された数値（この場合は「０」）を送信する。そして、ＣＰＵ１９は、ステップＳ１の処理に移行する。
【００３８】
ステップＳ２において、ＡＣキーが押されていないと判定した場合、ＣＰＵ１９は、ステップＳ６の処理に移行する。ステップＳ６において、ＣＰＵ１９は、上記ステップＳ１で取得したデータは、数値キー１１ａが押されて数値が入力されたものであったかをチェックする。
【００３９】
ステップＳ６において、数値が入力されたと判定した場合、ＣＰＵ１９は、ステップＳ７の処理に移行する。ステップＳ７において、ＣＰＵ１９は、上記ステップＳ１で取得したデータ（数値）を置数入力用エリア２５に格納させる。その後、ＣＰＵ１９は、ステップＳ４の処理に移行する。したがってこの場合には、置数入力用エリア２５に格納された数値が、ステップＳ４において表示部１３に表示され、ステップＳ５において通信部１７を介してスマートフォン５０へ送信されることになる。
【００４０】
また、ステップＳ６において、数値が入力されたのではないと判定した場合、ＣＰＵ１９は、ステップＳ８の処理に移行する。ステップＳ８において、ＣＰＵ１９は、上記ステップＳ１で取得したデータが、演算キー１１ｂが押されて演算子が入力されたものであったかをチェックする。
【００４１】
ステップＳ８において、演算子が入力されたと判定した場合、ＣＰＵ１９は、ステップＳ９の処理に移行する。ステップＳ９の詳細について、以下に説明する。
【００４２】
ステップＳ９において、ＣＰＵ１９は、入力された演算子を演算子情報エリア３５に格納する。また、ＣＰＵ１９は、以下のように、演算子の種類に応じて置数の確定処理を行う。ここでは、演算子の種類として、「＋」、「−」、「×」、「÷」、及び「＝」を例に挙げて説明する。
【００４３】
演算子（「＋」、「−」、「×」、「÷」、及び「＝」のいずれか）が入力されると、ＣＰＵ１９は、既に置数格納エリア３３に格納されている置数と置数入力用エリア２５に格納されている値とに応じた演算を行い、演算結果を新たな置数として置数格納エリア３３に格納させる。
【００４４】
ここで、演算子の種類が「＋」、「−」、「×」、及び「÷」のうち、いずれかである場合には、ＣＰＵ１９は、置数入力用エリア２５に既に格納されている数値を引き続きそのまま格納させる。その後、ＣＰＵ１９は、ステップＳ４の処理に移行する。したがってこの場合には、置数入力用エリア２５の数値の格納内容は変更が無いため、ステップＳ４では表示部１３の数値の表示は変更されない。このステップＳ４では、表示部１３に演算子が追加で表示（所謂シンボル表示）される。また、ステップＳ５で、スマートフォン５０へ、演算子に関するデータの送信が行われる。
【００４５】
一方、演算子の種類が「＝」の場合には、ＣＰＵ１９は、置数格納エリア３３に格納させる演算結果（新たな置数）と同じ値を、置数入力用エリア２５に格納させる。その後、ＣＰＵ１９は、ステップＳ４の処理に移行する。したがってこの場合には、置数入力用エリア２５の数値の格納内容は演算結果に変更されているため、ステップＳ４では表示部１３の数値の表示は演算結果に変更される。また、ステップＳ５で、スマートフォン５０へ、演算結果と演算子とに関するデータの送信が行われる。
【００４６】
ステップＳ８において、演算子が入力されていないと判定した場合、ＣＰＵ１９は、ステップＳ１０の処理に移行する。ステップＳ１０において、ＣＰＵ１９は、上記ステップＳ１で取得したデータが、メモリキー１１ｇの内、［Ｍ＋］キー又は［Ｍ−］キーが押されてメモリ登録機能（メモリ機能のうちの１つ）が入力されたものであるかをチェックする。
【００４７】
ステップＳ１０において、メモリ格納キーである［Ｍ＋］キー又は［Ｍ−］キーが押されたと判定した場合、ＣＰＵ１９は、ステップＳ１１の処理に移行する。ステップＳ１１において、ＣＰＵ１９は、［Ｍ＋］キー又は［Ｍ−］キーに応じた演算結果をＭ独立メモリ格納エリア２９に格納させる。ステップＳ１１の詳細について、以下に説明する。
【００４８】
ステップＳ１１において、ＣＰＵ１９は、Ｍ独立メモリ格納エリア２９に格納された数値に対し置数入力用エリア２５に格納された数値のメモリキー１１ｇ（［Ｍ＋］［Ｍ−］キー）に応じた演算（加算又は減算）を行い、演算結果をＭ独立メモリ格納エリア２９に格納させる。また、ＣＰＵ１９は、置数入力用エリア２５に格納された数値を置数格納エリア３３に格納させる。なお、ＣＰＵ１９は、入力されたメモリ登録機能の情報（［Ｍ＋］又は［Ｍ−］）を演算子情報エリア３５に格納させる。その後、ＣＰＵ１９は、ステップＳ４の処理に移行する。したがってこの場合には、置数入力用エリア２５の格納内容の内、数値は変更が無いため、ステップＳ４では表示部１３の表示は変更されず、また、ステップＳ５でのスマートフォン５０へのデータの送信は行われないことになる。なお、ステップＳ４において、数値をメモリしたことを示す表示（所謂シンボル表示）を行い、スマートフォン５０にその情報を通知しても良い。
【００４９】
ステップＳ１０において、［Ｍ＋］又は［Ｍ−］キーが押されていないと判定した場合、ＣＰＵ１９は、ステップＳ１２の処理に移行する。ステップＳ１２において、ＣＰＵ１９は、上記ステップＳ１で取得したデータが、メモリキー１１ｇの内のメモリ読出キーである［ＭＲ］キーが押されてメモリ読み出し機能（メモリ機能のうちの１つ）が入力されたものであるかをチェックする。
【００５０】
ステップＳ１２において、［ＭＲ］キーが押されたと判定した場合、ＣＰＵ１９は、ステップＳ１３の処理に移行する。ステップＳ１３において、ＣＰＵ１９は、第１ＭＲキー処理を行う。第１ＭＲキー処理では、ＣＰＵ１９は、Ｍ独立メモリ格納エリア２９に格納された数値を、置数入力用エリア２５及び置数格納エリア３３に格納させる。その後ＣＰＵ１９は、ステップＳ４処理に移行する。したがってこの場合には、置数入力用エリア２５に格納された数値が、ステップＳ４において表示部１３に表示され、ステップＳ５において通信部１７を介してスマートフォン５０へ送信されることになる。
【００５１】
ここで、上記ステップＳ１乃至ステップＳ１３による、キー入力部１１からの入力データに応じたメモリ２１の各エリアの格納手順について、例を用いて説明する。図４は、キー入力部１１の「５」、「Ｍ＋」、「＋」、「３」、「＝」、「ＭＲ」の各キーが順に押された際の各エリアの格納内容を示す。初期状態として、置数入力用エリア２５と置数格納エリア３３とＭ独立メモリ格納エリア２９とは、クリア（消去）されて、「０」を格納した状態となっているものとする。また、初期状態として、演算子情報エリア３５は、何も格納されていない状態となっているものとする。
【００５２】
図４の格納手順（Ａ）において、数値キー１１ａの内の「５」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、数値入力がされたと判定して（ステップＳ６：Ｙｅｓ）、数値「５」を置数入力用エリア２５に格納させる（ステップＳ７）。
【００５３】
図４の格納手順（Ｂ）において、メモリキー１１ｇの内の「Ｍ＋」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、メモリ機能「Ｍ＋」入力がされたと判定して（ステップＳ１０：Ｙｅｓ）、メモリ機能「Ｍ＋」を演算子情報エリア３５に格納させるとともに、置数入力用エリア２５に格納されている数値「５」をＭ独立メモリ格納エリア２９に格納されている数値「０」に加算し、演算結果の「５」を置数格納エリア３３とＭ独立メモリ格納エリア２９とに格納させる（ステップＳ１１）。なお、置数入力用エリア２５には、「５」が格納されたままである。
【００５４】
図４の格納手順（Ｃ）において、演算キー１１ｂの内の「＋」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、演算子が入力されたと判定して（ステップＳ８：Ｙｅｓ）、演算子「＋」を演算子情報エリア３５に格納させる（ステップＳ９）。なお、置数入力用エリア２５、置数格納エリア３３、Ｍ独立メモリ格納エリア２９には、順に「５」、「５」、「５」が格納されたままである。
【００５５】
図４の格納手順（Ｄ）において、数値キー１１ａの内の「３」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、数値が入力されたと判定して（ステップＳ６：Ｙｅｓ）、数値「３」を置数入力用エリア２５に格納させる（ステップＳ７）。なお、置数格納エリア３３、Ｍ独立メモリ格納エリア２９、演算子情報エリア３５には、順に「５」、「５」、「＋」が格納されたままである。
【００５６】
図４の格納手順（Ｅ）において、演算キー１１ｂの内の「＝」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、演算子が入力されたと判定して（ステップＳ８：Ｙｅｓ）、演算子「＝」を演算子情報エリア３５に格納させるとともに、置数格納エリア３３に格納されている置数（「５」）と置数入力用エリア２５に格納されている数値「３」とによる演算を行って、演算結果「８」を算出し、これを置数入力用エリア２５と置数格納エリア３３とに格納させる（ステップＳ９）。なお、Ｍ独立メモリ格納エリア２９には、「５」が格納されたままである。
【００５７】
図４の格納手順（Ｆ）において、メモリキー１１ｇの内のメモリ読出キーである「ＭＲ」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、メモリ機能「ＭＲ」入力がされたと判定して（ステップＳ１２：Ｙｅｓ）、メモリ機能「ＭＲ」を演算子情報エリア３５に格納させるとともに、Ｍ独立メモリ格納エリア２９に格納されている「５」を置数入力用エリア２５と置数格納エリア３３とに格納させる（ステップＳ１３）。なお、このとき、Ｍ独立メモリ格納エリア２９には、「５」が格納されたままである。
【００５８】
次に、ステップＳ５において電卓１０がスマートフォン５０に数値を送信した際のスマートフォン５０の動作について説明する。図５は、スマートフォン５０の動作を示すフローチャートである。
【００５９】
ステップＳ５１において、ＣＰＵ５９は、タッチパネル５１から入力された入力データ、又は電卓１０から転送された受信データを取得する。ここでいう入力データとは、例えば、数値、演算子である。また、受信データは、例えば、電卓１０の表示部１３に表示されている値（数値）である。
【００６０】
次にステップＳ５２において、ＣＰＵ５９は、上記ステップＳ５１で取得したデータが、タッチパネル５１から入力が行われたものであるかをチェックする。ステップＳ５２において、入力が行われたと判定した場合、ＣＰＵ５９はステップＳ５３の処理に移行する。ステップＳ５３において、ＣＰＵ５９はスマートフォン５０の状態を更新する。例えば、ＣＰＵ５９は、タッチパネル５１からの入力データを、メモリ６１に記憶させ、表示部５３に反映させる。入力データは、数値の場合もあるし、演算処理等の所定の処理の指示の場合もある。所定の処理の指示である場合には、処理結果のデータを、メモリ６１に記憶させ、表示部５３に反映させることができる。次にステップＳ５４において、ＣＰＵ５９は、更新内容（入力データ又は処理結果データ）をキーコードとして通信部５７を介して電卓１０に転送する。これにより、電卓１０において、ステップＳ１が実施される。次にＣＰＵ５９は、ステップＳ５１の処理に戻る。
【００６１】
ステップＳ５２において、入力が行われていないと判定した場合、ＣＰＵ５９はステップＳ５５の処理に移行する。ステップＳ５５において、ＣＰＵ５９は、上記ステップＳ５１で取得したデータが、電卓１０から受信されたものであるかをチェックする。
【００６２】
ステップＳ５５においてデータが電卓１０から受信されたものであると判定した場合、ＣＰＵ５９はステップＳ５６の処理に移行する。ステップＳ５６において、ＣＰＵ５９は、スマートフォン５０の状態を更新する。例えば、ＣＰＵ５９は、受信データを、メモリ６１に記憶させ、表示部５３に反映させる。次にＣＰＵ５９は、ステップＳ５１の処理に戻る。
【００６３】
ステップＳ５５においてデータが電卓１０から受信されたものではないと判定した場合、ＣＰＵ５９はステップＳ５７の処理に移行する。ステップＳ５７において、ＣＰＵ５９は、その他の処理を行う。ここでは、例えば、ＣＰＵ５９は、表示部５３に表示される値のフォントサイズを変更する処理、スマートフォン５０の使用モードを電卓モードに切り替えて表示部５３に電卓のキー配列を表示させる処理、表示部５３での表示内容を現在表示されている第１内容から第１内容の前に表示されていた第２内容に戻す処理、メモリ６１に既に記憶されている入力データ及び受信データをクリアする処理などを行う。次にＣＰＵ５９は、ステップＳ５１の処理に戻る。
【００６４】
図３Ｂに戻って、電卓１０の動作の説明を続ける。ステップＳ１２において、［ＭＲ］キーが押されていないと判定した場合、ＣＰＵ１９は、ステップＳ１４の処理に移行する。ステップＳ１４において、ＣＰＵ１９は、上記ステップＳ１で取得したデータが、上記ステップＳ５４でスマートフォン５０から転送されたデータを受信したものであるかをチェックする。ステップＳ１４において、取得したデータがスマートフォン５０から受信されたものと判定した場合、ＣＰＵ１９はステップＳ１５の処理に移行する。ステップＳ１５において、ＣＰＵ１９は、後述する受信データ制御処理を行う。そして、ＣＰＵ１９は、ステップＳ４の処理に戻る。
【００６５】
なお、ステップＳ１４において、取得したデータがスマートフォン５０から受信されたものではないと判定した場合には、ＣＰＵ１９はステップＳ１６の処理に移行する。ステップＳ１６において、ＣＰＵ１９は、その他の処理を行う。ここでは、例えば、メモリキー１１ｇの内の［ＧＴ］キーが押されたことに応じて、ＣＰＵ１９が、ＧＴ独立メモリ格納エリア２７に格納された数値を置数入力用エリア２５と置数格納エリア３３とに格納させる。
【００６６】
次に、上記ステップＳ１５の受信データ制御処理について説明する。図６は、受信データ制御処理を示すフローチャートである。ここでは、受信データが、例えば数値であるものとして説明する。
【００６７】
ステップＳ３１において、ＣＰＵ１９は、キー転送用メモリ格納エリア３１に既に格納されている数値をクリア（消去）する。これによりキー転送用メモリ格納エリア３１は、「０」を格納した状態となる。
【００６８】
次にステップＳ３２において、ＣＰＵ１９は、スマートフォン５０から転送されてきた受信データである数値を一旦置数入力用エリア２５に格納する。
【００６９】
次にステップＳ３３において、ＣＰＵ１９は、表示部１３が置数入力用エリア２５に格納された数値を表示可能であるかをチェックする。例えば、ＣＰＵ１９は、数値の桁数が表示可能な桁数であるかをチェックする。
【００７０】
ステップＳ３３において、表示部１３が置数入力用エリア２５に格納された数値を表示可能であると判定した場合、ＣＰＵ１９は、ステップＳ３４の処理に移行する。ステップＳ３４において、ＣＰＵ１９は、置数入力用エリア２５に格納された数値をキー転送用メモリ格納エリア３１に格納させる。すなわち、ステップＳ３４では、ステップＳ３１においてキー転送用メモリ格納エリア３１に格納された「０」が、ステップＳ３２において置数入力用エリア２５に格納された数値で上書きされる。その後ＣＰＵ１９は、ステップＳ３５の処理に移行する。
【００７１】
また、ステップＳ３３において、表示部１３が置数入力用エリア２５に格納された数値を表示可能ではないと判定した場合、ＣＰＵ１９はステップＳ３５の処理に移行する。このようにステップＳ３３の処理からステップＳ３５の処理に移行した場合には、置数入力用エリア２５に格納された数値はキー転送用メモリ格納エリア３１に格納されず、キー転送用メモリ格納エリア３１は「０」を格納したままとなる。
【００７２】
ステップＳ３５において、ＣＰＵ１９は、第２ＭＲキー処理を行う。この第２ＭＲキー処理においては、ＣＰＵ１９は、キー転送用メモリ格納エリア３１に格納された数値を、置数として置数格納エリア３３に格納させるとともに、置数入力用エリア２５に格納させる。つまり、処理がステップＳ３３、Ｓ３４、Ｓ３５の順で移行した場合には、スマートフォン５０から転送された数値は、置数入力用エリア２５からキー転送用メモリ格納エリア３１に格納された後、置数格納エリア３３と置数入力用エリア２５とに格納される。一方、処理がステップＳ３３、Ｓ３５の順で移行した場合には、置数入力用エリア２５に格納された数値はキー転送用メモリ格納エリア３１に転送されず、キー転送用メモリ格納エリア３１に格納されている「０」が、置数格納エリア３３と置数入力用エリア２５とに格納される。ここで、ステップＳ３５における「置数入力用エリア２５に格納」とは、既に置数入力用エリア２５に格納されている数値を、キー転送用メモリ格納エリア３１に格納されている数値で上書きすることを示す。その後ＣＰＵ１９は、ステップＳ３６の処理に移行する。
【００７３】
ステップＳ３６において、ＣＰＵ１９は、上記ステップＳ３３で表示部１３が置数入力用エリア２５に格納された数値を表示可能であると判定していたかをチェックする。表示可能と判定していた場合には、ＣＰＵ１９はステップＳ１５の受信データ制御処理を終了し、ステップＳ４の処理に戻る。また、表示可能であると判定していなかった場合には、ＣＰＵ１９はステップＳ３７の処理に移行する。
【００７４】
ステップＳ３７において、ＣＰＵ１９は、再度、上記ステップＳ１で受信して保持しているスマートフォン５０からの数値をそのまま置数入力用エリア２５に格納させる。次にステップＳ３８において、ＣＰＵ１９は、表示部１３が最下位桁の小数点を表示しないように、表示部１３の表示動作を設定し、ステップＳ１５の受信データ制御処理を終了する。その後ＣＰＵ１９はステップＳ４の処理に戻り、表示部１３の表示動作の設定内容に従って表示部１３を動作させる。
【００７５】
次に、スマートフォン５０からの受信データとキー入力部１１からの入力データとに応じたメモリ２１の各エリアの格納手順について、例を用いて説明する。図７の格納手順（Ａ）〜（Ｄ）は、ステップＳ１５の受信データ制御処理における格納手順、詳細にはスマートフォン５０から数値として「１２３４」が入力された際の各エリアの格納内容を示す。図７の格納手順（Ｅ）〜（Ｈ）は、受信データ制御処理後に、キー入力部１１において「＋」、「５」、「６」、「＝」の各キーが順に押された際の各エリアの格納内容を示す。初期状態として、置数入力用エリア２５と置数格納エリア３３とには、「０」が格納されているものとする。また、初期状態として、キー転送用メモリ格納エリア３１には、所定の値（数値）が格納されているものとする。また、初期状態として、演算子情報エリア３５は、何も格納されていない状態となっているものとする。
【００７６】
電卓１０では、スマートフォン５０から「１２３４」という数値データを受信すると（ステップＳ１４：Ｙｅｓ）、図７の格納手順（Ａ）において、ＣＰＵ１９が、キー転送用メモリ格納エリア３１に格納されている数値をクリアすることで、キー転送用メモリ格納エリア３１に「０」を格納する。（ステップＳ３１）。
【００７７】
次に、図７の格納手順（Ｂ）において、ＣＰＵ１９は受信して保持している「１２３４」を置数入力用エリア２５に格納する（ステップＳ３２）。ここで、「１２３４」は、表示部１３が表示可能な数値であると判定されたものとする（ステップＳ３３：Ｙｅｓ）。
【００７８】
図７の格納手順（Ｃ）において、ＣＰＵ１９は、置数入力用エリア２５に格納された「１２３４」をキー転送用メモリ格納エリア３１に格納させる（ステップＳ３４）。
【００７９】
図７の格納手順（Ｄ）において、ＣＰＵ１９は、キー転送用メモリ格納エリア３１に格納された「１２３４」を置数入力用エリア２５と置数格納エリア３３とに格納させる（ステップＳ３５）。「１２３４」は、表示部１３が表示可能な数値であると判定したものであるので（ステップＳ３６：Ｙｅｓ）、ＣＰＵ１９は、ステップＳ４の処理に移行し、置数入力用エリア２５に格納された「１２３４」を表示部１３に表示させる。この場合、「１２３４」はスマートフォン５０からの受信データであるため、ステップＳ５の処理でのスマートフォン５０への転送は行う必要が無く、ステップＳ１の処理に移行することになる。
【００８０】
図７の格納手順（Ｅ）において、キー入力部１１の「＋」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、演算子「＋」を演算子情報エリア３５に格納させる（ステップＳ９）。なお、このとき、置数入力用エリア２５、置数格納エリア３３、キー転送用メモリ格納エリア３１には、順に「１２３４」、「１２３４」、「１２３４」が格納されたままである。
【００８１】
図７の格納手順（Ｆ）において、キー入力部１１の「５」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、「５」を置数入力用エリア２５に格納させる（ステップＳ７）。
【００８２】
図７の格納手順（Ｇ）において、キー入力部１１の「６」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、「６」を置数入力用エリア２５に格納させる（ステップＳ７）。置数入力用エリア２５に既に「５」が格納されているため、置数入力用エリア２５には「５６」が格納される。
【００８３】
図７の格納手順（Ｈ）において、キー入力部１１の「＝」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、演算子情報エリア３５に「＝」を格納させるとともに、置数格納エリア３３に格納されている「１２３４」と置数入力用エリア２５に格納された「５６」とによる演算（ここでは、加算）を行い、演算結果「１２９０」を算出し、これを置数入力用エリア２５と置数格納エリア３３とに格納させる（ステップＳ９）。なお、このとき、キー転送用メモリ格納エリア３１には、「１２３４」が格納されたままである。
【００８４】
次に、スマートフォン５０からの受信データとキー入力部１１からの入力データとに応じたメモリ２１の各エリアの格納手順について、別の例を用いて説明する。図８の格納手順（Ａ）〜（Ｄ）は、図７の格納手順（Ａ）〜（Ｄ）と同一であるため、説明を省略する。図８の格納手順（Ｅ）〜（Ｇ）は、ステップＳ１５の受信データ制御処理後に、キー入力部１１において「５」と「６」と「＝」との各キーが順に押された際の各エリアの格納手順を示す。すなわち、図８は、図７の格納手順（Ｅ）が抜けているものである。
【００８５】
図８の格納手順（Ｅ）においてキー入力部１１の「５」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、「５」を置数入力用エリア２５に格納させる（ステップＳ７）。このとき、置数格納エリア３３とキー転送用メモリ格納エリア３１とには「１２３４」が格納されたままである。また、演算子情報エリア３５は、何も格納されていない状態のままである。
【００８６】
図８の格納手順（Ｆ）においてキー入力部１１の「６」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、「６」を置数入力用エリア２５に格納させる（ステップＳ７）。置数入力用エリア２５に既に「５」が格納されているため、置数入力用エリア２５には「５６」が格納される。なお、このとき、置数格納エリア３３、キー転送用メモリ格納エリア３１には、順に「１２３４」、「１２３４」が格納されたままである。また、演算子情報エリア３５は、何も格納されていない状態のままである。
【００８７】
図８の格納手順（Ｇ）においてキー入力部１１の「＝」キーが押されると、ＣＰＵ１９は、その入力データを取得し（ステップＳ１）、演算子情報エリア３５に「＝」を格納させるとともに、演算のための置数を確定する（ステップＳ９）。この場合、ステップＳ９では、置数入力用エリア２５に格納された「５６」は置数格納エリア３３に格納されている「１２３４」に対して演算されず、ＣＰＵ１９は、置数入力用エリア２５に格納された「５６」を置数として確定し、置数格納エリア３３に格納させる（ステップＳ９）。
【００８８】
以上説明したように、本実施形態のＣＰＵ１９は、スマートフォン５０から転送された値（数値）をキー転送用メモリ格納エリア３１に一旦格納し、その後に、キー転送用メモリ格納エリア３１に格納された値を、置数格納エリア３３に格納するとともに、置数入力用エリア２５に格納する処理を行う。転送された値（数値）が置数入力用エリア２５に格納されるため、転送された値（数値）を表示部１３において視認できる。また、スマートフォン５０から転送された値（数値）が置数格納エリア３３にも格納されることによって、転送された値（数値）は電卓１０で行われる演算に用いられる置数として確定する。このため、転送された値（数値）に対して電卓１０において演算が行われても、正しい演算を実行することができる。
【００８９】
また、スマートフォン５０から転送された値（数値）は、ＣＰＵ１９により置数入力用エリア２５に格納された数値が表示部１３で表示可能であると判定された場合、キー転送用メモリ格納エリア３１に一旦格納されてから処理されるため、転送された値（数値）をＭ独立メモリ格納エリア２９やＧＴ独立メモリ格納エリア２７に格納された値と分けることができ、電卓１０において演算が行われる場合に転送された値（数値）と格納された値との混同を防止でき、演算結果を表示部１３の表示内容に一致させることができる。
【００９０】
また、スマートフォン５０から転送された値（数値）は、ＣＰＵ１９により置数入力用エリア２５に格納された数値が表示部１３で表示可能であると判定された場合、キー入力部１１が操作されなくても自動で置数格納エリア３３及び置数入力用エリア２５に格納されるため、電卓１０の使用者は演算操作に専念できる。
【００９１】
また、前述のように、ＣＰＵ１９は、スマートフォン５０から転送された値（数値）を、一旦、置数入力用エリア２５に格納する処理を行っている。一般に、ＣＰＵ１９は、キー入力部１１から入力された値を置数入力用エリア２５に格納する処理を行う。よって、転送された値（数値）を置数入力用エリア２５に格納する処理と、キー入力部１１から入力された値を置数入力用エリア２５に格納する処理とを、電卓１０に入力される値を置数入力用エリア２５に格納する処理として共通した処理にすることができ、電卓１０のプログラムを簡略化させたり、動作時におけるＣＰＵ１９の負担を減らしたりすることができる。
【００９２】
また、前述のように、ＣＰＵ１９は、スマートフォン５０から転送された値（数値）をキー転送用メモリ格納エリア３１に格納させる前に、キー転送用メモリ格納エリア３１に格納されている値をクリアする処理を行う。このため、スマートフォン５０から電卓１０に既に転送（前回の通信までに転送）されていた値（数値）を、電卓１０における演算に用いてしまうことがない。
【００９３】
また、前述のように、ＣＰＵ１９は、置数入力用エリア２５に格納された値が表示部１３で表示可能かを判定する処理を行い、表示可能であれば置数入力用エリア２５に格納された値をキー転送用メモリ格納エリア３１に格納し、表示不可であれば置数入力用エリア２５に格納された値をキー転送用メモリ格納エリア３１に格納しない処理を行う。このため、スマートフォン５０から転送された値（数値）の中から表示部１３で表示できる値のみを、演算に用いることができる。例えば、スマートフォン５０から転送された値（数値）が暦情報である場合には、キー転送用メモリ格納エリア３１に格納されないため、電卓１０内での無駄な処理を行うことがない。
【００９４】
また、キー転送用メモリ格納エリア３１に格納された値を置数格納エリア３３と置数入力用エリア２５に格納する処理は、Ｍ独立メモリ格納エリア２９に格納された数値を置数入力用エリア２５と置数格納エリア３３とに格納する処理と共通した処理である。これにより電卓１０のプログラムを簡略化させたり、動作時におけるＣＰＵ１９の負担を減らしたりすることができる。
【００９５】
なお、以上の説明では、スマートフォン５０から電卓１０に転送された値（数値）は、置数入力用エリア２５に一旦格納された後、ＣＰＵ１９により置数入力用エリア２５に格納された数値が表示部１３で表示可能であると判定された場合に、キー転送用メモリ格納エリア３１に格納されるものとして説明したが、置数入力用エリア２５に格納されずに、キー転送用メモリ格納エリア３１に直接格納されてもよい。これにより、転送された値（数値）を素早くキー転送用メモリ格納エリア３１に格納でき、動作時におけるＣＰＵ１９の負担を減らすことができる。
【００９６】
また、置数格納エリア３３は１つのデータのみを格納しているものとして説明したが、置数格納エリア３３が複数のエリアに区切られ、各エリアそれぞれにデータが格納される構成であってもよい。
【００９７】
［第２の実施形態］
以下に、第２の実施形態について説明する。本実施形態では、第１の実施形態とは異なる点を主に記載する。
【００９８】
図９は、本実施形態に係る電卓１０とスマートフォン５０とのそれぞれの外観構成を示す正面図である。本実施形態では、電卓１０のキー入力部１１に日数切替キー４１がさらに設けられている点が第１の実施形態と異なる。
【００９９】
スマートフォン５０には、日数計算アプリケーションがインストールされている。この日数計算アプリケーションは、タッチパネル５１又は前述の第１の実施形態のように電卓１０の数値キー１１ａによって入力された基準日となる開始日７１（例えば２０１７年９月１日）と終了日７３（例えば２０２０年７月２４日）とから、スマートフォン５０のＣＰＵ５９に開始日７１と終了日７３との間の日数７５（１０５７日）を算出させるというものである。ＣＰＵ５９は、日数７５を、例えば、週数（１５１週＋０日）と月数（３４ヶ月＋２３日）と年数（２ヶ年＋３２７日）と年月数（２ヶ年＋１０ヶ月＋２３日）に換算した結果も算出可能となっている。スマートフォン５０は、基準日を含む基準日データと算出された日数７５とを電卓１０に送信することができる。電卓１０に送信された日数７５は、置数格納エリア３３に格納される値として用いられる。
【０１００】
本実施形態に係る電卓１０のＣＰＵ１９は、キー入力部１１からの入力に応じてスマートフォン５０から受信した日数７５に対して演算（加算又は減算）を行ったり、キー入力部１１の日数切替キー４１の押下に応じて、基準日データに基づく日付計算を行ったりすることができる。
【０１０１】
図１０は、図９に示される電卓１０とスマートフォン５０とのそれぞれの電子回路の構成を示すブロック図である。電卓１０のメモリ２１に、スマートフォン５０から受信した基準日データを格納するための基準日格納エリア３７が追加されている点が第１の実施形態とは異なる。基準日格納エリア３７は、電卓１０がスマートフォン５０から基準日データを受信すると、受信した基準日データを格納する。
【０１０２】
図１１は、本実施形態に係る電卓１０における日付計算の処理を示すフローチャートである。この日付計算は、例えば、第１の実施形態におけるステップＳ１６に示すその他の処理に組み込むことができる。
【０１０３】
ステップＳ７１において、ＣＰＵ１９は、キー入力部１１の日数切替キー４１が押されたかをチェックする。
【０１０４】
ステップＳ７１において、日数切替キー４１が押されたと判定した場合、ＣＰＵ１９はステップＳ７２の処理に移行する。ステップＳ７２において、ＣＰＵ１９は、スマートフォン５０から基準日データを受信する。次にステップＳ７３において、ＣＰＵ１９は、受信した基準日データをメモリ２１の基準日格納エリア３７に格納させる。ステップＳ７４において、例えば、ＣＰＵ１９は、置数格納エリア３３に格納されている置数を基準日に対して加算又は減算する日付計算を行う。減算は基準日の何日前かを示し、加算は基準日の何日後かを示す。ステップＳ７５において、ＣＰＵ１９は、日付計算によって算出された日付（年月日）を置数入力用エリア２５と置数格納エリア３３とに格納させる。その後、ＣＰＵ１９は、ステップＳ４の処理に戻ることで、算出した年月日を表示部１３に表示させることができる。
【０１０５】
また、ステップＳ７１において、日数切替キー４１が押されていないと判定した場合、ＣＰＵ１９はステップＳ７６の処理に移行する。ステップＳ７６において、ＣＰＵ１９は、その他の処理を行う。
【０１０６】
次に、スマートフォン５０からの受信データとキー入力部１１からの入力データに応じたメモリ２１の各エリアの格納手順について、例を用いて説明する。図１２の格納手順（Ａ）〜（Ｄ）は、ステップＳ１５の受信データ制御処理における格納内容を示す。図１２の格納手順（Ｅ）〜（Ｈ）は、受信した日数に対して減算が行われる際の格納内容を示す。図１２の格納手順（Ａ）〜（Ｈ）に示す格納内容は、図７の格納手順（Ａ）〜（Ｈ）に示す格納内容と基本的には同じであるが、図７の格納手順（Ａ）〜（Ｈ）における受信データ又は入力データである「１２３４」と「＋」と「５６」とを、「１０５７」と「−」と「７５」とに変更した点のみが異なっている。図１２の格納手順（Ａ）〜（Ｈ）に示す格納内容は、各ステップで実行される処理が、第１の実施形態のそれと同一であるため、説明を省略する。図１２の格納手順（Ｉ）〜（Ｊ）は、日数切替キー４１が押されて日付計算される際の各エリアの格納内容を示す。以下に、図１２の格納手順（Ｈ）の後の格納手順（Ｉ）以降の内容について説明する。
【０１０７】
キー入力部１１の日数切替キー４１が押されたと判定したならば（ステップＳ７１：Ｙｅｓ）、ＣＰＵ１９は、図１２の格納手順（Ｉ）において基準日「２０１７−９−１」を示す基準日データをスマートフォン５０から受信し（ステップＳ７２）、基準日（２０１７−９−１）を基準日格納エリア３７に格納させる（ステップＳ７３）。
【０１０８】
次にＣＰＵ１９は、置数格納エリア３３に格納されている置数「９８２」が基準日格納エリア３７に格納されている基準日「２０１７−９−１」に対して何日後かを示す日付計算を行う（ステップＳ７４）。そして図１２の格納手順（Ｊ）において、ＣＰＵ１９は、日付計算によって算出された「２０２０−５−１０」を置数入力用エリア２５と置数格納エリア３３とに格納させる（ステップＳ７５）。
【０１０９】
以上説明したように、本実施形態のＣＰＵ１９は、置数格納エリア３３に格納された置数と基準日とを基に日付を計算（加算又は減算）する処理を行い、演算された日付を置数入力用エリア２５と置数格納エリア３３とに格納する処理を行う。スマートフォン５０から電卓１０に転送された値（数値）が置数格納エリア３３に格納されることによって、転送された値（数値）は電卓１０で行われる演算に用いられる置数として確定される。このため、電卓１０では、転送された値（数値）に対して演算が行われ、さらにこの演算結果に対して日付計算が行われても、正しい日付計算を実行することができる。
【０１１０】
なお、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の発明が含まれており、開示される複数の構成要件から選択された組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、課題が解決でき、効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【０１１１】
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［１］
入力用キーを備えるキー入力部と、
外部機器と通信するための通信部と、
表示のために少なくとも前記キー入力部から入力された数値が格納される置数入力用エリアと、前記外部機器から転送された少なくとも数値が格納されるキー転送用メモリ格納エリアと、演算に用いられる確定された置数が格納される置数格納エリアと、を有するメモリと、
前記外部機器から転送された値を前記キー転送用メモリ格納エリアに格納した後に、前記キー転送用メモリ格納エリアに格納された前記値を、前記置数格納エリアに格納するとともに、前記置数入力用エリアに格納する処理を行うプロセッサと、
を具備する電子機器。
［２］
前記置数入力用エリアに格納された値を表示する表示部をさらに備えた［１］に記載の電子機器。
［３］
前記プロセッサは、前記外部機器から転送された前記値を一旦前記置数入力用エリアに格納した後に、前記置数入力用エリアに格納された前記値を前記キー転送用メモリ格納エリアに転送する処理を行う［２］に記載の電子機器。
［４］
前記プロセッサは、
前記外部機器から転送された前記値を前記キー転送用メモリ格納エリアに格納する前に前記キー転送用メモリ格納エリアに格納されている値をクリアする処理を行い、
前記表示部が前記置数入力用エリアに格納された前記値を表示可能かを判定する処理を行い、
表示可能であれば前記置数入力用エリアに格納された前記値を前記キー転送用メモリ格納エリアに格納し、
表示不可であれば前記置数入力用エリアに格納された前記値を前記キー転送用メモリ格納エリアに格納しない処理を行う［３］に記載の電子機器。
［５］
前記メモリは、更に、数値が格納される独立メモリ格納エリアを有し、
前記プロセッサは、
前記キー入力部のメモリ格納キーからの入力に応じて、前記置数入力用エリアに格納された前記数値を処理した数値を前記独立メモリ格納エリアに格納し、
前記キー入力部のメモリ読出キーからの入力に応じて、前記独立メモリ格納エリアに格納された前記数値を、前記置数入力用エリアと前記置数格納エリアとに格納する処理を行い、
前記キー転送用メモリ格納エリアに格納された前記値を前記置数格納エリアと前記置数入力用エリアに格納する処理は、前記独立メモリ格納エリアに格納された前記数値を前記置数入力用エリアと前記置数格納エリアとに格納する処理と共通した処理である［１］に記載の電子機器。
［６］
前記メモリは、更に、基準日を格納する基準日格納エリアを有し、
前記プロセッサは、
前記置数格納エリアに格納された前記置数と前記基準日とを基に日付を計算する処理を行い、
計算された前記日付を前記置数入力用エリアと前記置数格納エリアとに格納する処理を行う［１］に記載の電子機器。
［７］
前記入力用キーは、ハードウエアキーである［１］に記載の電子機器。
［８］
前記外部機器は、スマートデバイスである［１］に記載の電子機器。
［９］
入力用キーを備えるキー入力部と、外部機器と通信するための通信部と、表示のために少なくとも前記キー入力部から入力された数値が格納される置数入力用エリア、前記外部機器から転送された少なくとも数値が格納されるキー転送用メモリ格納エリア及び演算に用いられる確定された置数が格納された置数格納エリアを有するメモリと、前記キー入力部、前記通信部及び前記メモリを制御するプロセッサと、を具備する電子機器の制御方法であって、
前記プロセッサにより、前記外部機器から転送された値を前記キー転送用メモリ格納エリアに格納することと、
前記プロセッサにより、前記キー転送用メモリ格納エリアに格納された前記値を、前記置数格納エリアに格納するとともに、前記置数入力用エリアに格納することと、
を含む制御方法。
［１０］
入力用キーを備えるキー入力部と、外部機器と通信するための通信部と、メモリと、プロセッサと、を具備する電子機器の制御プログラムであって、
前記外部機器から転送された値を前記メモリのキー転送用メモリ格納エリアに格納させることと、
前記キー転送用メモリ格納エリアに格納された前記値を、演算に用いられる確定された置数が格納される前記メモリの置数格納エリアに格納させるとともに、表示のために少なくとも前記キー入力部から入力された数値が格納される前記メモリの置数入力用エリアに格納させることと、
をコンピュータに実行させる電子機器の制御プログラム。
【符号の説明】
【０１１２】
１０…電卓、１１…キー入力部、１３…表示部、１７…通信部、１９…ＣＰＵ、２１…メモリ、２３…計算処理プログラム、２５…置数入力用エリア、２７…ＧＴ独立メモリ格納エリア、２９…Ｍ独立メモリ格納エリア、３１…キー転送用メモリ格納エリア、３３…置数格納エリア、３５…演算子情報エリア、３７…基準日格納エリア、５０…スマートフォン、５１…タッチパネル、５３…表示部、５７…通信部、５９…ＣＰＵ、６１…メモリ。
【図１】
2020047035.tif 000003
【図２】
2020047035.tif 000004
【図３Ａ】
2020047035.tif 000005
【図３Ｂ】
2020047035.tif 000006
【図４】
2020047035.tif 000007
【図５】
2020047035.tif 000008
【図６】
2020047035.tif 000009
【図７】
2020047035.tif 000010
【図８】
2020047035.tif 000011
【図９】
2020047035.tif 000012
【図１０】
2020047035.tif 000013
【図１１】
2020047035.tif 000014
【図１２】
2020047035.tif 000015