(57)【要約】【課題】画面上のボタンを操作することによって、シンプルな行列操作を実現する。【解決手段】所定の演算が割り付けられたボタンに対して操作入力が為されると、ユーザ操作に従って選択された行列内の成分に、操作入力が為されたボタンに割り付けられた演算が適用されるようにした。【選択図】図５
2006018747.tif 000002
【特許請求の範囲】
【請求項１】
行列を表示する制御を行う行列表示制御手段と、
この行列表示制御手段により表示されている行列内の成分をユーザ操作に従って選択する成分選択手段と、
所定の演算が割り付けられたボタンを表示する制御を行うボタン表示制御手段と、
このボタン表示制御手段により表示されたボタンに対する操作入力が為された場合に、前記成分選択手段により選択されている成分に対して、前記ボタンに割り付けられている演算を適用する演算適用手段と、
を備えることを特徴とする行列表示制御装置。
【請求項２】
行列を表示する制御を行う行列表示制御手段と、
この行列表示制御手段により表示されている行列の成分のうち、所定処理の対象とする成分の範囲をユーザ操作に従って指定する指定手段と、
方向を指示するボタンを表示する制御を行うボタン表示制御手段と、
前記ボタンに対する操作入力に応じて、前記行列中の前記指定手段により指定された範囲を当該ボタンの指示する方向に移動することで、前記所定処理の対象とする成分を変更する制御を行う対象成分変更制御手段と、
を備えることを特徴とする行列表示制御装置。
【請求項３】
前記演算適用手段は、前記ボタンに対する操作入力の回数に応じた数値を引数の一として、前記ボタンに割り付けられている演算を適用する回数適応演算手段を有することを特徴とする請求項１に記載の行列表示制御装置。
【請求項４】
行列を表示する制御を行う行列表示制御手段と、
異なる複数の演算が割り付けられたボタンを表示する制御を行うボタン表示制御手段と、
このボタン表示制御手段により表示されたボタンに対する操作入力が為された場合に当該ボタンの表示形態を変更する形態変更手段と、
数値と前記行列表示制御手段により表示されている行列内の成分とをユーザ操作に従って選択する選択手段と、
この選択手段により選択された数値及び成分の値で、前記形態変更手段により表示形態が変更されているボタンに割り付けられている演算を実行し、その演算結果を当該成分の新たな値として表示更新する演算適用手段と、
を備えることを特徴とする行列表示制御装置。
【請求項５】
前記演算適用手段は、
前記ボタンに対して数値を設定する数値設定手段と、
この数値設定手段により設定された数値を引数の一として、前記ボタンに割り付けられている演算を適用する設定値適応演算手段と、
を有することを特徴とする請求項１に記載の行列表示制御装置。
【請求項６】
行列を表示する制御を行う行列表示制御手段と、
この行列表示制御手段により表示されている行列内の成分のうち、第１の成分と第２の成分とをユーザ操作に従って選択する成分選択手段と、
この成分選択手段により選択された第１の成分と第２の成分との間に所定の演算を適用し、その演算結果を所定の表示枠内に表示する制御を行う演算適用結果表示制御手段と、
を備えることを特徴とする行列表示制御装置。
【請求項７】
前記表示枠の大きさ及び表示位置を、前記成分選択手段による選択結果又は前記演算適用結果表示制御手段による演算結果に応じて変更する枠変更手段を更に備えることを特徴とする請求項６に記載の行列表示制御装置。
【請求項８】
前記行列表示制御手段により表示されている行列内の成分のうち、第３の成分をユーザ操作に従って選択する第３成分選択手段と、
この第３成分選択手段により選択された第３の成分と前記演算適用結果表示制御手段により前記表示枠内に表示された演算結果との間が所定の行列演算可能条件に合致するか否かを判定し、合致しない場合にその旨を報知する制御を行う報知制御手段と、
を更に備えることを特徴とする請求項６に記載の行列表示制御装置。
【請求項９】
前記ボタン表示制御手段は、それぞれ異なる演算が割り付けられた複数のボタンを表示する制御を行う手段であり、
前記演算適用手段は、前記複数のボタンのうち、操作入力が為されたボタンに割り付けられている演算を適用する手段であり、
前記ボタン表示制御手段により表示された複数のボタンのうち、操作入力が為されたボタンの表示形態を変更する形態変更手段を更に備えることを特徴とする請求項１に記載の行列表示制御装置。
【請求項１０】
行列を表示する制御を行う行列表示制御手段と、
行列の行数又は列数である成分単位数を変更するボタンを表示する制御を行うボタン表示制御手段と、
このボタン表示制御手段により表示されたボタンに対する操作入力が為された場合に、前記行列表示制御手段により表示されている行列の成分単位数を変更して当該行列を表示更新する行列変更手段と、
を備えることを特徴とする行列表示制御装置。
【請求項１１】
複数の行列を切り替え表示する制御を行う行列切替表示制御手段と、
この行列切替表示制御手段により表示された行列のうち、演算対象行列とする行列をユーザ操作に従って選択する行列選択手段と、
この行列選択手段により選択された行列を、選択される度に演算対象行列として所定の表示領域に追加表示していくことで行列演算式を表示する制御を行う行列演算式表示制御手段と、
を備えることを特徴とする行列表示制御装置。
【請求項１２】
行列を表示する制御を行う行列表示制御手段と、
この行列表示制御手段により表示されている行列内の成分をユーザ操作に従って選択する成分選択手段と、
異なる複数の演算が割り付けられたボタンを表示する制御を行うとともに、前記成分選択手段が成分を選択した基準となったユーザ操作が継続して為されている場合に、当該継続操作時間に応じて、前記ボタンに割り付けられている演算を順次変更して変更した演算の演算識別子を表示する制御を行うボタン表示制御手段と、
前記成分選択手段が成分を選択した基準となったユーザ操作が終了した時点で前記ボタン表示制御手段により表示されている演算識別子の演算を、前記成分選択手段により選択されている成分に適用する演算適用手段と、
を備えることを特徴とする行列表示制御装置。
【請求項１３】
行列を表示する制御を行う行列表示制御手段と、
この行列表示制御手段により表示されている行列の成分のうち、０成分にする成分を指定する所定形状の枠を表示する制御を行う枠表示制御手段と、
この枠表示制御手段により表示された枠をユーザ操作に従って前記表示されている行列上に重畳表示する重畳表示制御手段と、
前記表示されている行列の成分のうち、前記重畳表示制御手段により表示された枠が重畳表示されている成分の値を０とする対等な行列に表示更新する制御を行う枠適用手段と、
を備えることを特徴とする行列表示制御装置。
【請求項１４】
コンピュータに、
行列を表示する制御を行う行列表示制御機能と、
この行列表示制御機能により表示されている行列内の成分をユーザ操作に従って選択する成分選択機能と、
所定の演算が割り付けられたボタンを表示する制御を行うボタン表示制御機能と、
このボタン表示制御機能により表示されたボタンに対する操作入力が為された場合に、前記成分選択機能により選択されている成分に対して、前記ボタンに割り付けられている演算を適用する演算適用機能と、
を実現させるためのプログラム。
【請求項１５】
コンピュータに、
行列を表示する制御を行う行列表示制御機能と、
この行列表示制御機能により表示されている行列の成分のうち、所定処理の対象とする成分の範囲をユーザ操作に従って指定する指定機能と、
方向を指示するボタンを表示する制御を行うボタン表示制御機能と、
前記ボタンに対する操作入力に応じて、前記行列中の前記指定機能により指定された範囲を当該ボタンの指示する方向に移動することで、前記所定処理の対象とする成分を変更する制御を行う対象成分変更制御機能と、
を実現させるためのプログラム。
【請求項１６】
コンピュータに、
行列を表示する制御を行う行列表示制御機能と、
異なる複数の演算が割り付けられたボタンを表示する制御を行うボタン表示制御機能と、
このボタン表示制御機能により表示されたボタンに対する操作入力が為された場合に当該ボタンの表示形態を変更する形態変更機能と、
数値と前記行列表示制御機能により表示されている行列内の成分とをユーザ操作に従って選択する選択機能と、
この選択機能により選択された数値及び成分の値で、前記形態変更機能により表示形態が変更されているボタンに割り付けられている演算を実行し、その演算結果を当該成分の新たな値として表示更新する演算適用機能と、
を実現させるためのプログラム。
【請求項１７】
コンピュータに、
行列を表示する制御を行う行列表示制御機能と、
この行列表示制御機能により表示されている行列内の成分のうち、第１の成分と第２の成分とをユーザ操作に従って選択する成分選択機能と、
この成分選択機能により選択された第１の成分と第２の成分との間に所定の演算を適用し、その演算結果を所定の表示枠内に表示する制御を行う演算適用結果表示制御機能と、
を実現させるためのプログラム。
【請求項１８】
コンピュータに、
行列を表示する制御を行う行列表示制御機能と、
行列の行数又は列数である成分単位数を変更するボタンを表示する制御を行うボタン表示制御機能と、
このボタン表示制御機能により表示されたボタンに対する操作入力が為された場合に、前記行列表示制御機能により表示されている行列の成分単位数を変更して当該行列を表示更新する行列変更機能と、
を実現させるためのプログラム。
【請求項１９】
コンピュータに、
複数の行列を切り替え表示する制御を行う行列切替表示制御機能と、
この行列切替表示制御機能により表示された行列のうち、演算対象行列とする行列をユーザ操作に従って選択する行列選択機能と、
この行列選択機能により選択された行列を、選択される度に演算対象行列として所定の表示領域に追加表示していくことで行列演算式を表示する制御を行う行列演算式表示制御機能と、
を実現させるためのプログラム。
【請求項２０】
コンピュータに、
行列を表示する制御を行う行列表示制御機能と、
この行列表示制御機能により表示されている行列内の成分をユーザ操作に従って選択する成分選択機能と、
異なる複数の演算が割り付けられたボタンを表示する制御を行うとともに、前記成分選択機能が成分を選択した基準となったユーザ操作が継続して為されている場合に、当該継続操作時間に応じて、前記ボタンに割り付けられている演算を順次変更して変更した演算の演算識別子を表示する制御を行うボタン表示制御機能と、
前記成分選択機能が成分を選択した基準となったユーザ操作が終了した時点で前記ボタン表示制御機能により表示されている演算識別子の演算を、前記成分選択機能により選択されている成分に適用する演算適用機能と、
を実現させるためのプログラム。
【請求項２１】
コンピュータに、
行列を表示する制御を行う行列表示制御機能と、
この行列表示制御機能により表示されている行列の成分のうち、０成分にする成分を指定する所定形状の枠を表示する制御を行う枠表示制御機能と、
この枠表示制御機能により表示された枠をユーザ操作に従って前記表示されている行列上に重畳表示する重畳表示制御機能と、
前記表示されている行列の成分のうち、前記重畳表示制御機能により表示された枠が重畳表示されている成分の値を０とする対等な行列に表示更新する制御を行う枠適用機能と、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、行列表示制御装置及びプログラムに関し、例えば、行列の演算を行い演算結果を表示する行列演算装置に適用して好適なものである。
【背景技術】
【０００２】
従来より、入力された行列に関する種々の演算を行い演算結果を表示する行列演算機能を備えた電子計算装置（以下、行列演算装置と呼ぶ。）が知られている。
近年では、様々な行列計算を行うための機能、その他様々な機能を搭載した行列演算装置が開発されている。
【０００３】
ところで、そのように様々な機能を搭載した行列演算装置の操作仕様は複雑になりがちである。そこで、操作仕様を単純化すべく、例えば、操作された方向キーに応じて行列の行数や列数を増減設定することによりユーザが容易に行列の行数や列数を変更設定できるようにした行列演算装置が提案されている（例えば、特許文献１）。
【０００４】
また、行列演算装置の使用用途としては、計算速度におけるメリットや計算結果といった実用を目的とする行列演算ばかりでなく、行列演算についての学習を目的とする用途の場合もある。
【０００５】
例えば、行列の積の演算を行う過程において順次掛け合わされる一対の成分を反転等により順番に識別表示することで、行列成分同士がどのような組み合わせや順番で計算されて行くかを学習できるようにした行列演算装置が提案されている（例えば、特許文献２）。
【特許文献１】特開平１１−１６１６３９号公報
【特許文献２】特開２００１−７５９２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、学習目的の場合に求められる機能は、一般的に、特許文献２に示したような行列の積の計算に係る機能で充分とは言い難く、例えば教科書等で実施されている行列の操作を挙げても、行や列に関する基本変形等に始まり、相当多種に亘っている。
【０００７】
そして、そのような行列の操作の学習のための機能は、一般的に多種多様で複雑になりがちである。そのような多種多様な機能を実現しようとする装置において操作をシンプルに実現しようとすると、必然的にメニューやキーの数が増え、総合的な操作性が低下してしまう。この点について、かかる総合的な操作性の低下を、特許文献１の構成によっても防ぎ得るとは言い難い。
【０００８】
本発明は以上の問題点に鑑みてなされたもので、画面上のボタンを操作することによって、シンプルな行列操作を実現することを目的とする。
【課題を解決するための手段】
【０００９】
かかる課題を解決するため、請求項１に記載の行列表示制御装置（例えば、図１の行列演算装置１）においては、
行列を表示する制御を行う行列表示制御手段（例えば、図１のＣＰＵ２；図４のステップＡ１９，図１２のステップＣ１９，図２０のステップＥ１９，図３６のステップＪ１９）と、
この行列表示制御手段により表示されている行列内の成分をユーザ操作に従って選択する成分選択手段（例えば、図１のＣＰＵ２；図４のステップＡ２１〜Ａ２７，図１２のステップＣ２１〜Ｃ３１，図２０のステップＥ２１〜Ｅ２５，図３６のステップＪ２１〜Ｊ２５）と、
所定の演算が割り付けられたボタンを表示する制御を行うボタン表示制御手段（例えば、図１のＣＰＵ２；図４のステップＡ１３，図１２のステップＣ１３，図２０のステップＥ１３，図３６のステップＪ１３）と、
このボタン表示制御手段により表示されたボタンに対する操作入力が為された場合に、前記成分選択手段により選択されている成分に対して、前記ボタンに割り付けられている演算を適用する演算適用手段（例えば、図１のＣＰＵ２；図４のステップＡ２９〜Ａ３５，図１２のステップＣ３３〜Ｃ４１，図２０のステップＥ３５〜Ｅ４３，図３６のステップＪ２７〜Ｊ３１）と、
を備えることを特徴とする。
【００１０】
また、請求項２に記載の行列表示制御装置（例えば、図１の行列演算装置１）においては、
行列を表示する制御を行う行列表示制御手段（例えば、図１のＣＰＵ２；図８のステップＢ１９）と、
この行列表示制御手段により表示されている行列の成分のうち、所定処理の対象とする成分の範囲をユーザ操作に従って指定する指定手段（例えば、図１のＣＰＵ２；図８のステップＢ２１〜Ｂ３１）と、
方向を指示するボタンを表示する制御を行うボタン表示制御手段（例えば、図１のＣＰＵ２；図８のステップＢ１３）と、
前記ボタンに対する操作入力に応じて、前記行列中の前記指定手段により指定された範囲を当該ボタンの指示する方向に移動することで、前記所定処理の対象とする成分を変更する制御を行う対象成分変更制御手段（例えば、図１のＣＰＵ２；図８のステップＢ３３〜Ｂ３７）と、
を備えることを特徴とする。
【００１１】
また、請求項３に記載の行列表示制御装置（例えば、図１の行列演算装置１）は、請求項１に記載の行列表示制御装置において、前記演算適用手段は、前記ボタンに対する操作入力の回数に応じた数値を引数の一として、前記ボタンに割り付けられている演算を適用する回数適応演算手段（例えば、図１のＣＰＵ２；図１２のステップＣ３５〜Ｃ４１）を有することを特徴とする。
【００１２】
また、請求項４に記載の行列表示制御装置（例えば、図１の行列演算装置１）においては、
行列を表示する制御を行う行列表示制御手段（例えば、図１のＣＰＵ２；図１６のステップＤ１９）と、
異なる複数の演算が割り付けられたボタンを表示する制御を行うボタン表示制御手段（例えば、図１のＣＰＵ２；図１６のステップＤ１３）と、
このボタン表示制御手段により表示されたボタンに対する操作入力が為された場合に当該ボタンの表示形態を変更する形態変更手段（例えば、図１のＣＰＵ２；図１６のステップＤ２７）と、
数値と前記行列表示制御手段により表示されている行列内の成分とをユーザ操作に従って選択する選択手段（例えば、図１のＣＰＵ２；図１６のステップＤ３１）と、
この選択手段により選択された数値及び成分の値で、前記形態変更手段により表示形態が変更されているボタンに割り付けられている演算を実行し、その演算結果を当該成分の新たな値として表示更新する演算適用手段（例えば、図１のＣＰＵ２；図１６のステップＤ３５及びＤ３７）と、
を備えることを特徴とする。
【００１３】
また、請求項５に記載の行列表示制御装置（例えば、図１の行列演算装置１）は、請求項１に記載の行列表示制御装置において、
前記演算適用手段は、
前記ボタンに対して数値を設定する数値設定手段（例えば、図１のＣＰＵ２；図２０のステップＥ２７〜Ｅ３３）と、
この数値設定手段により設定された数値を引数の一として、前記ボタンに割り付けられている演算を適用する設定値適応演算手段（例えば、図１のＣＰＵ２；図２０のステップＥ３７）と、
を有することを特徴とする。
【００１４】
また、請求項６に記載の行列表示制御装置（例えば、図１の行列演算装置１）においては、
行列を表示する制御を行う行列表示制御手段（例えば、図１のＣＰＵ２；図２４，図２８，図３２のステップＦ１９）と、
この行列表示制御手段により表示されている行列内の成分のうち、第１の成分と第２の成分とをユーザ操作に従って選択する成分選択手段（例えば、図１のＣＰＵ２；図２４，図２８のステップＦ２１，Ｆ２３，Ｆ３１，図３２のステップＦ２１，Ｆ２３，Ｈ３３）と、
この成分選択手段により選択された第１の成分と第２の成分との間に所定の演算を適用し、その演算結果を所定の表示枠内に表示する制御を行う演算適用結果表示制御手段（例えば、図１のＣＰＵ２；図２４のステップＦ３５，Ｆ４３，Ｆ４５，Ｆ４７，Ｆ４９，図２８のステップＦ３５，Ｇ３７〜Ｇ４３，Ｇ４５，Ｇ４７，Ｇ４９，図３２のステップＦ３５，Ｈ４１，Ｈ５１）と、
を備えることを特徴とする。
【００１５】
また、請求項７に記載の行列表示制御装置（例えば、図１の行列演算装置１）は、請求項６に記載の行列表示制御装置において、前記表示枠の大きさ及び表示位置を、前記成分選択手段による選択結果又は前記演算適用結果表示制御手段による演算結果に応じて変更する枠変更手段（例えば、図１のＣＰＵ２；図２８のステップＧ３７〜Ｇ４３，Ｇ４５，Ｇ４７，Ｇ４９）を更に備えることを特徴とする。
【００１６】
また、請求項８に記載の行列表示制御装置（例えば、図１の行列演算装置１）は、請求項６に記載の行列表示制御装置において、
前記行列表示制御手段により表示されている行列内の成分のうち、第３の成分をユーザ操作に従って選択する第３成分選択手段（例えば、図１のＣＰＵ２；図３２のステップＨ５３）と、
この第３成分選択手段により選択された第３の成分と前記演算適用結果表示制御手段により前記表示枠内に表示された演算結果との間が所定の行列演算可能条件に合致するか否かを判定し、合致しない場合にその旨を報知する制御を行う報知制御手段（例えば、図１のＣＰＵ２；図３２のステップＨ５５，Ｈ５７）と、
を更に備えることを特徴とする。
【００１７】
また、請求項９に記載の行列表示制御装置（例えば、図１の行列演算装置１）は、請求項１に記載の行列表示制御装置において、
前記ボタン表示制御手段は、それぞれ異なる演算が割り付けられた複数のボタンを表示する制御を行う手段（例えば、図１のＣＰＵ２；図３６のステップＪ１３）であり、
前記演算適用手段は、前記複数のボタンのうち、操作入力が為されたボタンに割り付けられている演算を適用する手段（例えば、図１のＣＰＵ２；図３６のステップＪ２９）であり、
前記ボタン表示制御手段により表示された複数のボタンのうち、操作入力が為されたボタンの表示形態を変更する形態変更手段（例えば、図１のＣＰＵ２；図３６のステップＪ３１）を更に備えることを特徴とする。
【００１８】
また、請求項１０に記載の行列表示制御装置（例えば、図１の行列演算装置１）においては、
行列を表示する制御を行う行列表示制御手段（例えば、図１のＣＰＵ２；図４０のステップＫ１７）と、
行列の行数又は列数である成分単位数を変更するボタンを表示する制御を行うボタン表示制御手段（例えば、図１のＣＰＵ２；図４０のステップＫ１３）と、
このボタン表示制御手段により表示されたボタンに対する操作入力が為された場合に、前記行列表示制御手段により表示されている行列の成分単位数を変更して当該行列を表示更新する行列変更手段（例えば、図１のＣＰＵ２；図４０のステップＫ１９〜Ｋ４５）と、
を備えることを特徴とする。
【００１９】
また、請求項１１に記載の行列表示制御装置（例えば、図１の行列演算装置１）においては、
複数の行列を切り替え表示する制御を行う行列切替表示制御手段（例えば、図１のＣＰＵ２；図４４のステップＭ２１〜Ｍ２５）と、
この行列切替表示制御手段により表示された行列のうち、演算対象行列とする行列をユーザ操作に従って選択する行列選択手段（例えば、図１のＣＰＵ２；図４４のステップＭ２７）と、
この行列選択手段により選択された行列を、選択される度に演算対象行列として所定の表示領域に追加表示していくことで行列演算式を表示する制御を行う行列演算式表示制御手段（例えば、図１のＣＰＵ２；図４４のステップＭ２７，Ｍ２９）と、
を備えることを特徴とする。
【００２０】
また、請求項１２に記載の行列表示制御装置（例えば、図１の行列演算装置１）においては、
行列を表示する制御を行う行列表示制御手段（例えば、図１のＣＰＵ２；図４８のステップＮ１９）と、
この行列表示制御手段により表示されている行列内の成分をユーザ操作に従って選択する成分選択手段（例えば、図１のＣＰＵ２；図４８のステップＮ２１，Ｎ３５）と、
異なる複数の演算が割り付けられたボタンを表示する制御を行うとともに、前記成分選択手段が成分を選択した基準となったユーザ操作が継続して為されている場合に、当該継続操作時間に応じて、前記ボタンに割り付けられている演算を順次変更して変更した演算の演算識別子を表示する制御を行うボタン表示制御手段（例えば、図１のＣＰＵ２；図４８のステップＮ２３〜Ｎ３３）と、
前記成分選択手段が成分を選択した基準となったユーザ操作が終了した時点で前記ボタン表示制御手段により表示されている演算識別子の演算を、前記成分選択手段により選択されている成分に適用する演算適用手段（例えば、図１のＣＰＵ２；図４８のステップＮ３７，Ｎ３９）と、
を備えることを特徴とする。
【００２１】
また、請求項１３に記載の行列表示制御装置（例えば、図１の行列演算装置１）においては、
行列を表示する制御を行う行列表示制御手段（例えば、図１のＣＰＵ２；図５２のステップＰ１９）と、
この行列表示制御手段により表示されている行列の成分のうち、０成分にする成分を指定する所定形状の枠を表示する制御を行う枠表示制御手段（例えば、図１のＣＰＵ２；図５２のステップＰ２１〜Ｐ２５）と、
この枠表示制御手段により表示された枠をユーザ操作に従って前記表示されている行列上に重畳表示する重畳表示制御手段（例えば、図１のＣＰＵ２；図５２のステップＰ２７，Ｐ２９）と、
前記表示されている行列の成分のうち、前記重畳表示制御手段により表示された枠が重畳表示されている成分の値を０とする対等な行列に表示更新する制御を行う枠適用手段（例えば、図１のＣＰＵ２；図５２のステップＰ３３）と、
を備えることを特徴とする。
【００２２】
また、請求項１４に記載のプログラムは、
コンピュータ（例えば、図１のＣＰＵ２）に、
行列を表示する制御を行う行列表示制御機能（図４のステップＡ１９，図１２のステップＣ１９，図２０のステップＥ１９，図３６のステップＪ１９）と、
この行列表示制御機能により表示されている行列内の成分をユーザ操作に従って選択する成分選択機能（図４のステップＡ２１〜Ａ２７，図１２のステップＣ２１〜Ｃ３１，図２０のステップＥ２１〜Ｅ２５，図３６のステップＪ２１〜Ｊ２５）と、
所定の演算が割り付けられたボタンを表示する制御を行うボタン表示制御機能（図４のステップＡ１３，図１２のステップＣ１３，図２０のステップＥ１３，図３６のステップＪ１３）と、
このボタン表示制御機能により表示されたボタンに対する操作入力が為された場合に、前記成分選択機能により選択されている成分に対して、前記ボタンに割り付けられている演算を適用する演算適用機能（図４のステップＡ２９〜Ａ３５，図１２のステップＣ３３〜Ｃ４１，図２０のステップＥ３５〜Ｅ４３，図３６のステップＪ２７〜Ｊ３１）と、
を実現させることを特徴とする。
【００２３】
また、請求項１５に記載のプログラムは、
コンピュータ（例えば、図１のＣＰＵ２）に、
行列を表示する制御を行う行列表示制御機能（図８のステップＢ１９）と、
この行列表示制御機能により表示されている行列の成分のうち、所定処理の対象とする成分の範囲をユーザ操作に従って指定する指定機能（図８のステップＢ２１〜Ｂ３１）と、
方向を指示するボタンを表示する制御を行うボタン表示制御機能（図８のステップＢ１３）と、
前記ボタンに対する操作入力に応じて、前記行列中の前記指定機能により指定された範囲を当該ボタンの指示する方向に移動することで、前記所定処理の対象とする成分を変更する制御を行う対象成分変更制御機能（図８のステップＢ３３〜Ｂ３７）と、
を実現させることを特徴とする。
【００２４】
また、請求項１６に記載のプログラムは、
コンピュータ（例えば、図１のＣＰＵ２）に、
行列を表示する制御を行う行列表示制御機能（図１６のステップＤ１９）と、
異なる複数の演算が割り付けられたボタンを表示する制御を行うボタン表示制御機能（図１６のステップＤ１３）と、
このボタン表示制御機能により表示されたボタンに対する操作入力が為された場合に当該ボタンの表示形態を変更する形態変更機能（図１６のステップＤ２７）と、
数値と前記行列表示制御機能により表示されている行列内の成分とをユーザ操作に従って選択する選択機能（図１６のステップＤ３１）と、
この選択機能により選択された数値及び成分の値で、前記形態変更機能により表示形態が変更されているボタンに割り付けられている演算を実行し、その演算結果を当該成分の新たな値として表示更新する演算適用機能（図１６のステップＤ３５及びＤ３７）と、
を実現させることを特徴とする。
【００２５】
また、請求項１７に記載のプログラムは、
コンピュータ（例えば、図１のＣＰＵ２）に、
行列を表示する制御を行う行列表示制御機能（図２４，図２８，図３２のステップＦ１９）と、
この行列表示制御機能により表示されている行列内の成分のうち、第１の成分と第２の成分とをユーザ操作に従って選択する成分選択機能（図２４，図２８のステップＦ２１，Ｆ２３，Ｆ３１，図３２のステップＦ２１，Ｆ２３，Ｈ３３）と、
この成分選択機能により選択された第１の成分と第２の成分との間に所定の演算を適用し、その演算結果を所定の表示枠内に表示する制御を行う演算適用結果表示制御機能（図２４のステップＦ３５，Ｆ４３，Ｆ４５，Ｆ４７，Ｆ４９，図２８のステップＦ３５，Ｇ３７〜Ｇ４３，Ｇ４５，Ｇ４７，Ｇ４９，図３２のステップＦ３５，Ｈ４１，Ｈ５１）と、
を実現させることを特徴とする。
【００２６】
また、請求項１８に記載のプログラムは、
コンピュータ（例えば、図１のＣＰＵ２）に、
行列を表示する制御を行う行列表示制御機能（図４０のステップＫ１７）と、
行列の行数又は列数である成分単位数を変更するボタンを表示する制御を行うボタン表示制御機能（図４０のステップＫ１３）と、
このボタン表示制御機能により表示されたボタンに対する操作入力が為された場合に、前記行列表示制御機能により表示されている行列の成分単位数を変更して当該行列を表示更新する行列変更機能（図４０のステップＫ１９〜Ｋ４５）と、
を実現させることを特徴とする。
【００２７】
また、請求項１９に記載のプログラムは、
コンピュータに（例えば、図１のＣＰＵ２）、
複数の行列を切り替え表示する制御を行う行列切替表示制御機能（図４４のステップＭ２１〜Ｍ２５）と、
この行列切替表示制御機能により表示された行列のうち、演算対象行列とする行列をユーザ操作に従って選択する行列選択機能（図４４のステップＭ２７）と、
この行列選択機能により選択された行列を、選択される度に演算対象行列として所定の表示領域に追加表示していくことで行列演算式を表示する制御を行う行列演算式表示制御機能（図４４のステップＭ２７，Ｍ２９）と、
を実現させることを特徴とする。
【００２８】
また、請求項２０に記載のプログラムは、
コンピュータ（例えば、図１のＣＰＵ２）に、
行列を表示する制御を行う行列表示制御機能（図４８のステップＮ１９）と、
この行列表示制御機能により表示されている行列内の成分をユーザ操作に従って選択する成分選択機能（図４８のステップＮ２１，Ｎ３５）と、
異なる複数の演算が割り付けられたボタンを表示する制御を行うとともに、前記成分選択機能が成分を選択した基準となったユーザ操作が継続して為されている場合に、当該継続操作時間に応じて、前記ボタンに割り付けられている演算を順次変更して変更した演算の演算識別子を表示する制御を行うボタン表示制御機能（図４８のステップＮ２３〜Ｎ３３）と、
前記成分選択機能が成分を選択した基準となったユーザ操作が終了した時点で前記ボタン表示制御機能により表示されている演算識別子の演算を、前記成分選択機能により選択されている成分に適用する演算適用機能（図４８のステップＮ３７，Ｎ３９）と、
を実現させることを特徴とする。
【００２９】
また、請求項２１に記載のプログラムは、
コンピュータ（例えば、図１のＣＰＵ２）に、
行列を表示する制御を行う行列表示制御機能（図５２のステップＰ１９）と、
この行列表示制御機能により表示されている行列の成分のうち、０成分にする成分を指定する所定形状の枠を表示する制御を行う枠表示制御機能（図５２のステップＰ２１〜Ｐ２５）と、
この枠表示制御機能により表示された枠をユーザ操作に従って前記表示されている行列上に重畳表示する重畳表示制御機能（図５２のステップＰ２７，Ｐ２９）と、
前記表示されている行列の成分のうち、前記重畳表示制御機能により表示された枠が重畳表示されている成分の値を０とする対等な行列に表示更新する制御を行う枠適用機能（図５２のステップＰ３３）と、
を実現させることを特徴とする。
【発明の効果】
【００３０】
請求項１に記載の行列表示制御装置及び請求項１４に記載のプログラムによれば、所定の演算が割り付けられたボタンに対して操作入力が為されると、ユーザ操作に従って選択された行列内の成分に、ボタンに割り付けられた演算が適用される。
従ってユーザは、ボタンに対する操作入力を行うだけで、選択した行列内の成分に対する演算を行うことができる。
【００３１】
また、請求項２に記載の行列表示制御装置及び請求項１５に記載のプログラムによれば、方向を指示するボタンに対する操作入力に応じて、表示された行列中における、ユーザ操作に従って指定された所定処理の対象とする成分の範囲が、ボタンの指示する方向に移動し、当該所定処理の対象とする成分が変更される。
従ってユーザは、表示された行列中に所定処理の対象とする成分の範囲を指定し、この成分の範囲をボタンに対する操作入力を行うだけで移動させ、当該所定処理の対象とする成分を変更することができる。
【００３２】
また、請求項３に記載の行列表示制御装置によれば、ボタンに割り付けられた演算が適用される際、ボタンに対して為された操作入力の回数に応じた数値が、当該演算に用いられる一つの引数となる。
従ってユーザは、ボタンに対する操作入力を行うだけで、選択した行列内の成分に対して、引数を指定して演算を行うことができる。
【００３３】
また、請求項４に記載の行列表示制御装置及び請求項１６に記載のプログラムによれば、異なる複数の演算が割り付けられたボタン対して操作入力が為されると、当該ボタンの表示形態が変更され、表示形態が変更されているボタンに割り付けられている演算が、ユーザ操作に従って選択された数値及び行列内の成分の値で実行され、その演算結果が当該成分の新たな値となる。
従ってユーザは、ボタンの表示形態を変更する操作入力により異なる複数の演算から一の演算を選択した後は、当該一の演算を、選択する数値及び行列内の成分の値で実行することができる。
【００３４】
また、請求項５に記載の行列表示制御装置によれば、ボタンに割り付けられた演算が適用される際、ボタンに対して設定された数値が当該演算の引数の一となる。
従ってユーザは、ボタンに対する操作入力を行うだけで、選択した行列内の成分に対して、引数を指定して演算を行うことができる。
【００３５】
また、請求項６に記載の行列表示制御装置及び請求項１７に記載のプログラムによれば、表示されている行列内の成分のうちの、ユーザ操作に従って選択された第１の成分と第２の成分との間に所定の演算が適用され、その演算結果が所定の表示枠内に表示される。
【００３６】
また、請求項７に記載の行列表示制御装置によれば、演算結果が所定の表示枠内に表示される際、表示枠の大きさ及び表示位置は、ユーザ操作に従って選択された第１の成分や第２の成分又は演算結果に応じて変更される。
【００３７】
また、請求項８に記載の行列表示制御装置によれば、演算結果が所定の表示枠内に表示される際、ユーザ操作に従って選択された第３の成分と表示枠内に表示された演算結果との間が所定の行列演算可能条件に合致するか否かが判定され、合致しない場合にその旨が報知される。
従ってユーザは、選択した第１の成分及び第２の成分の間に適用された所定の演算の演算結果と、選択した第３の成分と間が所定の行列演算可能条件に合致しない場合に、その旨を認識することができる。
【００３８】
また、請求項９に記載の行列表示制御装置によれば、それぞれ異なる演算が割り付けられた複数のボタンに対して操作入力が為されると、複数のボタンのうち、操作入力が為されたボタンの表示形態が変更され、当該ボタンに割り付けられた演算が選択された成分に適用される。
従ってユーザは、ボタンへの操作入力により行列内の成分に対する演算を行う際、選択された成分に適用された演算を、ボタンの表示形態が変更されることにより認識することができる。
【００３９】
また、請求項１０に記載の行列表示制御装置及び請求項１８に記載のプログラムによれば、行列の行数又は列数である成分単位数を変更するボタンが表示され、当該ボタンに対して操作入力が為されると、表示されている行列の成分単位数が変更される。
従ってユーザは、ボタンに対する操作入力を行うだけで、表示されている行列の成分単位数を変更することができる。
【００４０】
また、請求項１１に記載の行列表示制御装置及び請求項１９に記載のプログラムによれば、複数の行列が切り替え表示され、表示された行列のうち、ユーザ操作に従って演算対象行列として選択された行列が、選択される度に演算対象行列として所定の表示領域に追加表示されていくことにより行列演算式が表示される。
従ってユーザは、所定の表示領域に追加表示させる演算対象行列を、切り替え表示される複数の行列のうちから選択していく操作により、所定の表示領域に行列演算式を表示させることができる。
【００４１】
また、請求項１２に記載の行列表示制御装置及び請求項２０に記載のプログラムによれば、表示されている行列内の成分を選択するユーザ操作がなされると、成分を選択した基準となったユーザ操作の継続操作時間に応じて、ボタンに割り付けられている演算が順次変更され、また、変更された演算の演算識別子が表示され、成分を選択した基準となったユーザ操作が終了した時点で表示されている演算識別子の演算が、選択されている成分に適用される。
従ってユーザは、行列内の成分を選択する操作を行うだけで、演算が適用される成分及び当該成分に適用される演算を選択して演算を行うことができる。
【００４２】
また、請求項１３に記載の行列表示制御装置及び請求項２１に記載のプログラムによれば、０成分にする成分を指定する所定形状の枠がユーザ操作に従って、表示されている行列上に重畳表示されると、当該行列が、その成分のうち枠が重畳表示されている成分の値を０とする対等な行列に更新される。
【発明を実施するための最良の形態】
【００４３】
以下、図面を参照して本発明を実施するための形態について詳細に説明する。以下においては、本発明を行列の演算を行い演算結果を表示する行列演算装置に適用した場合について説明するが、本発明を適用可能な形態がこれに限定されるものではない。
【００４４】
１．共通的な構成について
図１は、各実施の形態における行列演算装置１の回路構成を示す図である。同図に示すように行列演算装置１はＣＰＵ（Central Processing Unit ）２と、当該ＣＰＵ２にそれぞれ接続される表示駆動回路３、位置検出回路４、入力キー部５、ＲＡＭ（Random Access Memory）６及びＲＯＭ（Read Only Memory）７とを備えて構成されている。
【００４５】
また、表示駆動回路３にはＬＣＤ等でなる表示部３１が接続されて構成され、ＣＰＵ２から入力される表示信号に基づいて表示部３１に各種画面を表示する。即ち、ＣＰＵ２は表示駆動回路３を介して表示部３１を表示制御する。
【００４６】
また、位置検出回路４には表示部３１に重ねて設けられたタブレット４１が接続されている。このタブレット４１は、スタイラスペン４２のペン先をタブレット４１に触れて、又はタブレット４１の所定距離内に近づけて行う操作（以下、ポインティング操作と呼ぶ。）を受け付けるポインティングデバイス、即ちマウス等と同等の入力装置である。
【００４７】
スタイラスペン４２によりポインティング操作がなされると、ポインティング操作がなされた位置（以下、ポインティング位置と呼ぶ。）を位置検出回路４が検出し、当該ポインティング位置を表す信号をＣＰＵ２へ伝える。
【００４８】
この場合ＣＰＵ２は、位置検出回路４を介して検出されたポインティング位置と表示部３１の表示とに応じて種々の処理を行うようになされ、これにより、いわゆる「タッチパネル」としてのユーザインタフェースを実現するよう構成されている。
【００４９】
例えば、スタイラスペン４２の先でタブレット４１を軽く叩く「タップ」の操作を、表示部３１上に押しボタンを模して表示された所定のシンボル（以下、ボタンアイコンと呼ぶ。）に対して行うと、そのボタンアイコンに対応付けられた機能がＣＰＵ２によって実行される。
【００５０】
また、スタイラスペン４２の先でタブレット４１に触れる「タップイン」の操作に続けて、スタイラスペン４２の先をタブレット４１との接触を保ったまま動かす「ドラッグ」の操作の後、タブレット４１への接触を終了する「タップアウト」の操作を行うという一連の操作は、マウス操作におけるドラッグアンドドロップに相当している（以下、かかる操作をドラッグアンドドロップと呼ぶ。）。
【００５１】
即ち例えば、表示部３１上の所定のシンボルに対してドラッグアンドドロップが行われると、当該シンボルの表示位置を、タップインがなされた位置（以下、タップイン位置と呼ぶ。）からタップアウトされた位置（以下、タップアウト位置と呼ぶ。）へ移動させるといった表示制御の処理をＣＰＵ２が行う。
【００５２】
なお、このように各実施の形態においては、ポインティングデバイスとして、タブレット４１及びスタイラスペン４２によるタッチパネルを用いることとするが、本発明はこれに限らず、マウスを用いるようにしても良い。その場合、マウス操作におけるクリックは各実施の形態におけるタップに対応することとなる。
【００５３】
入力キー部５は、行列演算装置１の使用に必要なキー群であり、特に、行列演算装置１の動作状態（機能実行モード）を、各実施の形態の行列処理における各動作状態とするための機能開始キー５２を備えて構成される。
【００５４】
ＲＡＭ６は、ＣＰＵ２が実行する各種処理プログラムや、これらのプログラムの実行に係るデータ等を一時的に保持する格納領域を備える。なお、これらの格納領域の詳細については、後述する各実施の形態において説明する。
【００５５】
ＲＯＭ７は、例えば書換え可能な不揮発性メモリを用いて構成される補助記憶装置であり、各種初期設定やハードウェアの検査、必要なプログラムのロード等を行う為の初期プログラムが格納される。ＲＯＭ７には、それらの他にも行列演算装置１の動作に係る各種処理プログラムや種々の機能を実現する為のデータ等が格納される。なお、これらのプログラムやデータ等の詳細については、後述する各実施の形態において説明する。
【００５６】
２．第１の実施の形態
本実施の形態の行列演算装置１は、ＲＡＭ６として、図２に示すＲＡＭ６ａを用いて構成される。同図に示すようにＲＡＭ６ａは、行列データ６１ａを備えて構成される。この行列データ６１ａは、ユーザ操作に応じて呼び出された所定の行列の内容を格納する領域である。
【００５７】
また、本実施の形態の行列演算装置１は、ＲＯＭ７として、図３に示すＲＯＭ７ａを用いて構成される。同図に示すようにＲＯＭ７ａは、割付テーブル７１ａ及び第１の行列処理プログラム７２ａを備えて構成される。
【００５８】
割付テーブル７１ａは、後述する各行列コントローラに割り付けられている演算を記憶しているテーブルである。
【００５９】
第１の行列処理プログラム７２ａは、本実施の形態の行列処理である第１の行列処理を実現するための処理プログラムである。ＣＰＵ２は、行列演算装置１の電源が投入されると、この第１の行列処理プログラム７２ａを実行することにより第１の行列処理を行うようになされている。
【００６０】
図４は、この第１の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ａから第１の行列処理プログラム７２ａを読み出し実行することにより第１の行列処理を行う。以下、この第１の行列処理について、同図を用いて詳細に説明する。
【００６１】
本処理を開始すると、ＣＰＵ２はまず、機能実行モードをオンとするユーザ操作（以下、モードオンと呼ぶ。）を待ち受け、モードオンを検知すると（ステップＡ１１）、機能実行モードの開始処理を行いステップＡ１５へ移行する（ステップＡ１３）。
【００６２】
この場合ＣＰＵ２はまず、例えば、図５（ａ）に示すような、行列コントローラである上ボタンｃ１、左ボタンｃ２、下ボタンｃ３及び右ボタンｃ４を表示部３１に表示する。
【００６３】
この行列コントローラは、何れもスタイラスペン４２によるタップを受け付けることが可能となっており、また、ＣＰＵ２は、タップを受け付けた行列コントローラに応じて、割り付けられている処理を行うようになされている。
【００６４】
即ち、タップがなされると、ＣＰＵ２はタブレット４１におけるその位置（以下、タップ位置と呼ぶ。）の座標（以下、タップ座標と呼ぶ。）を検出し、表示部３１において行列コントローラを表示する座標とタップ座標とを比較することにより、行列コントローラがタップされたこと及びタップを受け付けた行列コントローラを認識し、ＲＯＭ７ａの割付テーブル７１ａに従って、タップを受け付けた行列コントローラに割り付けられている演算を行う。
【００６５】
次いでステップＡ１５において、ＣＰＵ２は、行列を呼び出すユーザ操作（以下、行列呼出しと呼ぶ。）を待ち受け、行列呼出しを検知すると（ステップＡ１５）、当該行列呼出しにより呼び出された行列のデータをＲＡＭ６ａの行列データ６１ａに格納し（ステップＡ１７）、表示部３１の成分表示エリアａ１に表示する（ステップＡ１９）。かくして表示部３１においては、例えば図５（ａ）に示すような表示状態となる。
【００６６】
次いで、図５（ｂ）に示すように、ＣＰＵ２はユーザによるタップ操作を待ち受け、タップ操作を検知すると（ステップＡ２１）、位置検出回路４を介してタップ座標の検出を行い（ステップＡ２３）、検出されたタップ座標が成分表示エリアａ１内であるか否かを判別する（ステップＡ２５）。
【００６７】
検出されたタップ座標が成分表示エリアａ１内である場合（ステップＡ２５：Ｙｅｓ）、成分表示エリアａ１内を占めるように表示されている各行列成分の内、タップ座標を内に含む成分、即ちタップされた成分（以下、指定成分と呼ぶ。）を反転表示する（ステップＡ２７）。これにより表示部３１においては、例えば図５（ｃ）に示すような、指定成分に反転表示ｓ１がなされた表示状態となる。
【００６８】
次いで、図５（ｄ）に示すように、ＣＰＵ２はユーザによるタップ操作を待ち受け、タップ操作を検知すると（ステップＡ２９）、位置検出回路４を介してタップ座標の検出を行い（ステップＡ３１）、行列コントローラがタップされたか否かを判別する（ステップＡ３３）。
【００６９】
行列コントローラがタップされた場合（ステップＡ３３：Ｙｅｓ）、ＣＰＵ２は、反転表示ｓ１がなされた行列成分（以下、反転成分と呼ぶ。）に対して、タップを受け付けた行列コントローラに割り付けられている演算を実行し、反転成分の値をその演算結果で置き換える（ステップＡ３５）。
【００７０】
例えば図５（ｄ）に示すように、「＋１」を割り付けられている右ボタンｃ４がタップされた場合、ＣＰＵ２は、反転表示ｓ１がなされた（１，３）成分の「７」に対して「＋１」を実行し、得られる「８」を（１，３）成分の新たな値とする。かくして、例えば図５（ｅ）に示すような、（１，３）成分の「８」に反転表示ｓ１がなされた表示状態となる。
【００７１】
次いでＣＰＵ２は、終了操作がなされたか否かを判別し（ステップＡ３７）、終了操作がなされると（ステップＡ３７：Ｙｅｓ）本処理を終了する。
一方、終了操作がなされない場合（ステップＡ３７：Ｎｏ）、ＣＰＵ２は、行列の別の成分を指定する操作がなされたかを判別する（ステップＡ３９）。
【００７２】
別の成分を指定する操作がなされない場合（ステップＡ３９：Ｎｏ）、ＣＰＵ２はステップＡ２９へ戻る。即ち、タップされた行列コントローラに応じた演算を行うステップＡ２９以降を繰り返すこととなる。
【００７３】
一方、別の成分を指定する操作がなされる場合（ステップＡ３９：Ｙｅｓ）、ＣＰＵ２は、ステップＡ２１へ戻る。即ち、タップされた行列成分を指定成分として反転表示し、続けてタップされた行列コントローラに応じた演算を反転成分に対して行うステップＡ２１以降を繰り返すこととなる。
【００７４】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、メニューを呼出す操作や数値入力のためのキー操作を要することなく行列の成分を増減する演算等を行うことができる。
【００７５】
３．第２の実施の形態
本実施の形態の行列演算装置１は、ＲＡＭ６として、図６に示すＲＡＭ６ｂを用いて構成される。同図に示すようにＲＡＭ６ｂは、行列データ６１ｂ、タップイン座標６２ｂ、タップアウト座標６３ｂ及びアクティブ範囲６４ｂを備えて構成される。
【００７６】
行列データ６１ｂは、第１の実施の形態における行列データ６１ａと同様の、ユーザ操作に応じて呼び出された所定の行列の内容を格納する領域である。
【００７７】
タップイン座標６２ｂ及びタップアウト座標６３ｂは、ドラッグアンドドロップの際のタップイン位置及びタップアウト位置の座標をそれぞれ格納する領域である。
【００７８】
アクティブ範囲６４ｂは、演算等、所定の操作を受け付けることとなる成分群（以下、アクティブ成分と呼ぶ。）の範囲を表す情報を格納する領域であり、例えばアクティブ成分の行番号及び列番号によりその範囲が特定される。
【００７９】
また、本実施の形態の行列演算装置１は、ＲＯＭ７として、図７に示すＲＯＭ７ｂを用いて構成され、同図に示すようにＲＯＭ７ｂは、割付テーブル７１ｂ及び第２の行列処理プログラム７２ｂを備えて構成される。
【００８０】
割付テーブル７１ｂは、各行列コントローラに対応付けて割り付けられている移動方向を記憶しているテーブルである。
【００８１】
第２の行列処理プログラム７２ｂは、本実施の形態の行列処理である第２の行列処理を実現するための処理プログラムである。ＣＰＵ２は、行列演算装置１の電源が投入されると、この第２の行列処理プログラム７２ｂを実行することにより第２の行列処理を行うようになされている。
【００８２】
図８は、この第２の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ｂから第２の行列処理プログラム７２ｂを読み出し実行することにより第２の行列処理を行う。以下、この第２の行列処理について、同図を用いて詳細に説明する。
【００８３】
本処理を開始すると、ＣＰＵ２はまず、ユーザによるモードオンの操作を待ち受け、モードオンを検知すると（ステップＢ１１）、機能実行モードの開始処理を行いステップＢ１５へ移行する（ステップＢ１３）。
【００８４】
この場合も第１の行列処理と同様に、ＣＰＵ２は開始処理において、例えば、図９（ａ）に示すような行列コントローラ、即ち上ボタンｃ１、左ボタンｃ２、下ボタンｃ３及び右ボタンｃ４を表示部３１に表示する。
【００８５】
本実施の形態の場合、行列コントローラに対するタップを受け付けると、ＣＰＵ２はＲＯＭ７ｂの割付テーブル７１ｂを参照し、タップを受け付けた行列コントローラに割り付けられている移動方向へ、後述する選択成分エリアを移動するようになされている。
【００８６】
次いでステップＢ１５において、ＣＰＵ２は、ユーザによる行列呼出しの操作を待ち受け、行列呼出しを検知すると（ステップＢ１５）、呼び出された行列のデータをＲＡＭ６ｂの行列データ６１ｂに格納し（ステップＢ１７）、表示部３１の成分表示エリアａ１に表示する（ステップＢ１９）。かくして表示部３１においては、例えば図９（ａ）に示すような表示状態となる。
【００８７】
次いでＣＰＵ２は、ユーザによるタップインの操作を待ち受け、タップインを検知すると（ステップＢ２１）、位置検出回路４を介してタップイン座標の検出を行い（ステップＢ２３）、タップイン座標６２ｂへ格納する。そして、検出されたタップイン座標が成分表示エリアａ１内であるか否かを判別する（ステップＢ２５）。
【００８８】
検出されたタップイン座標が成分表示エリアａ１内である場合（ステップＢ２５：Ｙｅｓ）、タップインに続けてユーザによりなされるタップアウトに応じて、ＣＰＵ２は、位置検出回路４を介してタップアウト座標の検出を行い（ステップＢ２７）、タップアウト座標６３ｂへ格納する。
【００８９】
そして、タップイン座標６２ｂ及びタップアウト座標６３ｂによって定まる所定の成分を、アクティブ成分として特定し（ステップＢ２９）、アクティブ成分の範囲をアクティブ範囲６４ｂへ格納する。具体的には、例えば、タップイン位置及びタップアウト位置を対頂角とする長方形を、タップイン座標６２ｂ及びタップアウト座標６３ｂにより求め、当該長方形により一部や全体が囲まれる位置にある各成分をアクティブ成分として特定する。
【００９０】
次いでＣＰＵ２は、アクティブ範囲６４ｂに基づいて、アクティブ成分が表示されている領域を選択成分エリアとして反転表示する（ステップＢ３１）。かくして表示部３１においては、例えば図９（ｂ）に示すような、タップイン位置ｓ２１及びタップアウト位置ｓ２２によって定まるアクティブ成分を表示する領域、即ち選択成分エリアに反転表示ｓ２３が施された表示状態となる。
【００９１】
次いでＣＰＵ２は、ユーザによるタップ操作を待ち受けてタップ操作を検知し（ステップＢ３３）、そのタップ操作に係るタップ座標の検出を行うことにより、行列コントローラがタップされたか否かを判別する（ステップＢ３５）。
【００９２】
行列コントローラがタップされた場合（ステップＢ３５：Ｙｅｓ）、ＣＰＵ２は、選択成分エリアを表している反転表示ｓ２３を、タップを受け付けた行列コントローラに割り付けられている方向へ移動して表示する（ステップＢ３７）。この場合、例えば、アクティブ範囲６４ｂに格納されるアクティブ成分の行番号及び列番号の範囲を、タップを受け付けた行列コントローラに応じて増減させ、この新たなアクティブ範囲６４ｂに基づく選択成分エリアに改めて反転表示ｓ２３を施して表示する。
【００９３】
かくして、例えば図９（ｃ）に示すように、右方向への移動が割り付けられている右ボタンｃ４がタップされると、例えば図９（ｄ）に示すような、反転表示ｓ２３を施された選択成分エリアが右方向へ移動した表示状態となる。
【００９４】
次いでＣＰＵ２は、終了操作がなされたか否かを判別し（ステップＢ３９）、終了操作がなされると（ステップＢ３９：Ｙｅｓ）本処理を終了する。
一方、終了操作がなされない場合（ステップＢ３９：Ｎｏ）、ＣＰＵ２はステップＢ３３へ戻る。即ち、タップされた行列コントローラに応じた方向へ、選択成分エリアを表す反転表示ｓ２３を移動するステップＢ３３以降を繰り返すこととなる。
【００９５】
従って、例えば図９（ｄ）に示す表示状態で更に、下方向への移動が割り付けられている下ボタンｃ３がタップされると、例えば図９（ｅ）に示すような、反転表示ｓ２３を施された選択成分エリアが、更に下方向へ移動した表示状態となる。
【００９６】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、行列内に演算等の所定の操作を行うためのアクティブ成分を選択成分エリアとして指定し、この選択成分エリアを反転表示等により明示したり、メニューを呼出す操作やキー操作を要することなく選択成分エリアの移動等を行うことができる。
【００９７】
４．第３の実施の形態
本実施の形態の行列演算装置１は、ＲＡＭ６として、図１０に示すＲＡＭ６ｃを用いて構成され、同図に示すようにＲＡＭ６ｃは、行列データ６１ｃ及び演算引数６５ｃを備えて構成される。
【００９８】
行列データ６１ｃは、第１の実施の形態における行列データ６１ａと同様の、ユーザ操作に応じて呼び出された所定の行列の内容を格納する領域である。
演算引数６５ｃは、後述する第３の行列処理における演算の際に引数となる数値を格納する領域である。
【００９９】
また、本実施の形態の行列演算装置１は、ＲＯＭ７として、図１１に示すＲＯＭ７ｃを用いて構成され、同図に示すようにＲＯＭ７ｃは、割付テーブル７１ｃ及び第３の行列処理プログラム７２ｃを備えて構成される。
【０１００】
割付テーブル７１ｃは、各行列コントローラに対応付けて割り付けられている演算を記憶しているテーブルである。なお、本実施の形態の割付テーブル７１ｃにおいては、行列コントローラそれぞれに四則演算１つを割り付けて構成しているが、本発明はこれに限らず、例えば指数関数や順列数等、任意の二項演算を行列コントローラに割り付けるようにしてもよい。
【０１０１】
第３の行列処理プログラム７２ｃは、本実施の形態の行列処理である第３の行列処理を実現するための処理プログラムである。ＣＰＵ２は、行列演算装置１の電源が投入されると、この第３の行列処理プログラム７２ｃを実行することにより第３の行列処理を行うようになされている。
【０１０２】
図１２は、この第３の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ｃから第３の行列処理プログラム７２ｃを読み出し実行することにより第３の行列処理を行う。以下、この第３の行列処理について、同図を用いて詳細に説明する。
【０１０３】
本処理を開始すると、ＣＰＵ２はまず、ユーザによるモードオンの操作を待ち受け、モードオンを検知すると（ステップＣ１１）、機能実行モードの開始処理を行いステップＣ１５へ移行する（ステップＣ１３）。
【０１０４】
この場合も第１の行列処理等と同様に、ＣＰＵ２は開始処理において、例えば、図１３（ａ）に示すような行列コントローラ、即ち上ボタンｃ１、左ボタンｃ２、下ボタンｃ３及び右ボタンｃ４を表示部３１に表示する。
【０１０５】
本実施の形態の場合、行列コントローラに対するタップを受け付けると、ＣＰＵ２はＲＯＭ７ｃの割付テーブル７１ｃを参照し、タップを受け付けた行列コントローラに割り付けられている演算を実行するようになされている。
【０１０６】
次いでステップＣ１５において、ＣＰＵ２は、ユーザによる行列呼出しの操作を待ち受け、行列呼出しを検知すると（ステップＣ１５）、呼び出された行列のデータを行列データ６１ｃに格納し（ステップＣ１７）、表示部３１の成分表示エリアａ１に表示する（ステップＣ１９）。かくして、例えば図１３（ａ）に示すような表示状態となる。
【０１０７】
次いでＣＰＵ２は、ユーザによるタップインの操作を待ち受けてタップインを検知し（ステップＣ２１）、タップイン座標を検出し（ステップＣ２３）、検出されたタップイン座標が成分表示エリアａ１内であるか否かを判別する（ステップＣ２５）。
【０１０８】
検出されたタップイン座標が成分表示エリアａ１内である場合（ステップＣ２５：Ｙｅｓ）、ＣＰＵ２は、続けてユーザによりなされるタップアウトに係るタップアウト座標の検出を行い（ステップＣ２７）、次いで、タップイン座標及びタップアウト座標によって定まるアクティブ成分を特定し（ステップＣ２９）、次いで、アクティブ成分が表示されている領域を選択成分エリアとして反転表示する（ステップＣ３１）。
【０１０９】
かくして、例えば図１３（ｂ）に示すような、タップイン及びタップアウトによって指定された選択成分エリアに反転表示ｓ３１が施されアクティブ成分が明示された表示状態となる。
【０１１０】
次いでＣＰＵ２は、ステップＣ３３〜Ｃ３９を繰り返し行うことによって、行列コントローラに対するタップ操作が連続的に行われるのを受け付け、かかる操作（以下、連続タップと呼ぶ。）において行列コントローラになされたタップの回数（以下、タップ回数と呼ぶ。）を勘定する。
【０１１１】
即ち、ＣＰＵ２はまず、ユーザによるタップ操作を待ち受けてタップ操作を検知し（ステップＣ３３）、そのタップ操作に係るタップ座標を検出することにより、行列コントローラがタップされたか否かを判別する（ステップＣ３５）。
行列コントローラがタップされた場合（ステップＣ３５：Ｙｅｓ）、ＣＰＵ２は、その時点におけるタップ回数を演算引数６５ｃへ格納する（ステップＣ３７）。
【０１１２】
次いでＣＰＵ２は、連続タップが終了したか否かを判別し（ステップＣ３９）、連続タップが終了していない場合（ステップＣ３９：Ｎｏ）、ステップＣ３３へ戻り、ステップＣ３３〜Ｃ３９を再び行うこととなる。
【０１１３】
この場合、連続タップが終了したか否かは、例えば、ＣＰＵ２が行列コントローラへのタップを検知して再びタップを検知するまでに所定の時間（例えば０．６秒間）が経過したか否かをもって判別すればよい。
【０１１４】
かくして、連続タップが終了すると（ステップＣ３９：Ｙｅｓ）、当該連続タップにおいてなされたタップ回数が演算引数６５ｃに格納された状態で、ＣＰＵ２はステップＣ４１へ移行する。
【０１１５】
そしてステップＣ４１へ移行すると、ＣＰＵ２は、連続タップがなされた行列コントローラに割り付けられた演算を、演算引数６５ｃを引数として、アクティブ成分を構成する成分それぞれに対して適用し（ステップＣ４１）、演算結果それぞれを、演算を適用された成分それぞれの新たな値として表示する（ステップＣ４３）。
【０１１６】
例えば、図１３（ｃ）に示すような、アクティブ成分である（１，１）、（１，２）、（２，１）及び（２，２）成分のそれぞれ「１」、「４」、「２」及び「５」に反転表示ｓ３１が施された表示状態において、「＋」（加算）を割り付けられている右ボタンｃ４が３回連続でタップされると、これら各成分それぞれに対して「＋３」が行われ、図１３（ｄ）に示すように、（１，１）、（１，２）、（２，１）及び（２，２）成分の値がそれぞれ「４」、「７」、「５」及び「８」となる。
【０１１７】
次いでＣＰＵ２は、終了操作がなされたか否かを判別し（ステップＣ４５）、終了操作がなされると（ステップＣ４５：Ｙｅｓ）本処理を終了する。
一方、終了操作がなされない場合（ステップＣ４５：Ｎｏ）、ＣＰＵ２はステップＣ３３へ戻る。即ち、連続タップされた行列コントローラに応じた演算を、タップ回数を引数として、アクティブ成分を構成する成分それぞれに対して適用するステップＣ３３以降を繰り返すこととなる。
【０１１８】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、演算等の所定の操作を行うために指定した行列成分に対して、例えば四則演算を初めとする任意の演算を、１回の操作で、かつキー操作を要することなく行うことができる。
【０１１９】
５．第４の実施の形態
本実施の形態の行列演算装置１は、ＲＡＭ６として、図１４に示すＲＡＭ６ｄを用いて構成され、同図に示すようにＲＡＭ６ｄは、行列データ６１ｄ及び適用演算６６ｄを備えて構成される。
【０１２０】
行列データ６１ｄは、第１の実施の形態における行列データ６１ａと同様の、ユーザ操作に応じて呼び出された所定の行列の内容を格納する領域である。
【０１２１】
適用演算６６ｄは、後述する第４の行列処理において選択数値と選択成分との間に適用される、例えば「×」（選択数値による選択成分への乗算）や「＋」（選択数値による選択成分への加算）といった演算の内容や種別（以下、演算内容と呼ぶ。）を格納する領域である。
【０１２２】
また、本実施の形態の行列演算装置１は、ＲＯＭ７として、図１５に示すＲＯＭ７ｄを用いて構成され、同図に示すようにＲＯＭ７ｄは、割付テーブル７１ｄ及び第４の行列処理プログラム７２ｄを備えて構成される。
【０１２３】
割付テーブル７１ｄは、各行列コントローラに対応付けて割り付けられている演算を記憶しているテーブルである。なお、この割付テーブル７１ｄの場合も、第３の実施の形態の割付テーブル７１ｃと同様に、四則演算に限らず任意の二項演算を行列コントローラに割り付けるようにしてよい。
【０１２４】
第４の行列処理プログラム７２ｄは、本実施の形態の行列処理である第４の行列処理を実現するための処理プログラムである。ＣＰＵ２は、行列演算装置１の電源が投入されると、この第４の行列処理プログラム７２ｄを実行することにより第４の行列処理を行うようになされている。
【０１２５】
図１６は、この第４の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ｄから第４の行列処理プログラム７２ｄを読み出し実行することにより第４の行列処理を行う。以下、この第４の行列処理について、同図を用いて詳細に説明する。
【０１２６】
本処理を開始すると、ＣＰＵ２はまず、ユーザによるモードオンの操作を待ち受け、モードオンを検知すると（ステップＤ１１）、機能実行モードの開始処理を行いステップＤ１５へ移行する（ステップＤ１３）。
【０１２７】
この場合も第１の行列処理等と同様に、ＣＰＵ２は開始処理において、例えば、図１７（ａ）に示すような行列コントローラ、即ち上ボタンｃ１、左ボタンｃ２、下ボタンｃ３及び右ボタンｃ４を表示部３１に表示する。
【０１２８】
本実施の形態の場合、行列コントローラに対するタップを受け付けると、ＣＰＵ２はＲＯＭ７ｄの割付テーブル７１ｄを参照し、タップを受け付けた行列コントローラに割り付けられている演算を実行するようになされている。
【０１２９】
ステップＤ１５へ移行すると、ＣＰＵ２は、ユーザによる行列呼出しの操作を待ち受けて行列呼出しを検知し（ステップＤ１５）、呼び出された行列のデータを行列データ６１ｄに格納し（ステップＤ１７）、表示部３１の成分表示エリアａ１に表示する（ステップＤ１９）。かくして、例えば図１７（ａ）に示すような表示状態となる。
【０１３０】
次いでＣＰＵ２は、ユーザによるタップ操作を待ち受けてタップ操作を検知し（ステップＤ２１）、そのタップ操作に係るタップ座標を検出し（ステップＤ２３）、検出されたタップ座標に基づいて、行列コントローラへのタップがなされたか否かを判別する（ステップＤ２５）。
【０１３１】
そして、例えば図１７（ｂ）に示すように、行列コントローラへのタップがなされた場合（ステップＤ２５：Ｙｅｓ）、ＣＰＵ２は、タップを受け付けた行列コントローラの表示を、タップを受け付けるまでとは異なる様態に変更する（ステップＤ２７）。
【０１３２】
例えば、右ボタンｃ４がタップされた場合を表した図１７（ｃ）に示すように、当初、内側を塗り潰した三角形として表示されていた右ボタンｃ４が、塗り潰しのない三角形に変更されて表示される。
【０１３３】
次いでＣＰＵ２は、タップを受け付けた行列コントローラに割り付けられている演算内容をＲＡＭ６ｄの適用演算６６ｄに記憶する（ステップＤ２９）。
【０１３４】
次いでＣＰＵ２は、ユーザによる数値のドラッグアンドドロップ操作を待ち受け、ドラッグアンドドロップ操作を検知すると（ステップＤ３１）、ステップＤ３３へ移行する。
【０１３５】
この場合ＣＰＵ２は、まず数値のキー入力を受け付け、その数値（以下、入力数値と呼ぶ。）を、例えば図１７（ｃ）に示すような数値生成エリアａ２にアイコン状に表示し、入力数値を成分表示エリアａ１内の任意の成分へドラッグアンドドロップする操作を可能とするように表示部３１及びタブレット４１を制御することにより、入力数値のドラッグアンドドロップを待ち受ける。なお、この数値生成エリアａ２には複数個の入力数値を表示できるものとし、ユーザによりドラッグアンドドロップされる入力数値を選択数値と呼ぶこととする。
【０１３６】
ステップＤ３３へ移行すると、ＣＰＵ２は、検知したドラッグアンドドロップ操作におけるタップアウトの位置が成分表示エリアａ１内であるか否か、即ち、選択数値がドロップされた位置（以下、ドロップ位置と呼ぶ。）が行列の何れかの成分の位置に該当するか否かを判別する（ステップＤ３３）。
【０１３７】
ドロップ位置が行列の成分の位置に該当する場合（ステップＤ３３：Ｙｅｓ）、ＣＰＵ２は、適用演算６６ｄに記憶される演算内容を、選択数値とドロップ位置の成分（以下、選択成分と呼ぶ。）それぞれとの間に適用する（ステップＤ３５）。そしてＣＰＵ２は、選択成分の値の表示を、得られた演算結果で更新する（ステップＤ３７）。
【０１３８】
かくして、例えば、図１７（ｃ）に示すように、数値生成エリアａ２の「４」においてタップインし、図１７（ｄ）に示すように、行列の（２，１）成分である「２」においてタップアウトする、即ち、選択数値「４」を選択成分「２」へドラッグアンドドロップする操作がなされると、表示様態に変更が施されている右ボタンｃ４に割り付けられた演算「＋」がこの選択数値「４」と選択成分「２」との間に適用され、図１７（ｅ）に示すように、演算結果である「６」が（２，１）成分の新たな値として表示された状態となる。
【０１３９】
次いでＣＰＵ２は、次の操作がなされるのを待ち受けて検知し（ステップＤ３９）、入力数値をドラッグアンドドロップする操作が検出されたか否かを判別する（ステップＤ４１）。
【０１４０】
ドラッグアンドドロップが検出された場合（ステップＤ４１：Ｙｅｓ）、ＣＰＵ２はステップＤ３３へ戻る。即ちＣＰＵ２は、ドラッグアンドドロップされた選択数値とそのドロップ位置の選択成分との間に、適用演算６６ｄに記憶される演算内容を適用するステップＤ３３以降を繰り返し行うこととなる。
【０１４１】
一方、次の操作がドラッグアンドドロップでなく（ステップＤ４１：Ｎｏ）、行列コントローラへのタップである場合（ステップＤ４３：Ｙｅｓ）、ＣＰＵ２はステップＤ２７へ戻る。即ち、ＣＰＵ２は繰り返しステップＤ２７以降を行い、新たにタップされた行列コントローラに割り付けられている演算内容を、タップに続けて新たにドラッグアンドドロップされる選択数値と選択成分との間に適用することとなる。
【０１４２】
また、次の操作が行列コントローラへのタップでなく（ステップＤ４３：Ｎｏ）、終了操作である場合（ステップＤ４５：Ｙｅｓ）、ＣＰＵ２は本処理を終了する。
【０１４３】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、行列の成分に対して同一種類の演算を次々行う場合に、数値のドラッグアンドドロップ操作のみで連続して行うことができる。
【０１４４】
６．第５の実施の形態
本実施の形態の行列演算装置１は、ＲＡＭ６として、図１８に示すＲＡＭ６ｅを用いて構成され、同図に示すようにＲＡＭ６ｅは、行列データ６１ｅ、指定範囲６４ｅ及び演算引数６５ｅを備えて構成される。
【０１４５】
行列データ６１ｅは、第１の実施の形態における行列データ６１ａと同様の、ユーザ操作に応じて呼び出された所定の行列の内容を格納する領域である。
指定範囲６４ｅは、第２の実施の形態におけるアクティブ範囲６４ｂと同様の、演算等、所定の操作を受け付けることとなる成分の範囲を表す情報を格納する領域である。
【０１４６】
演算引数６５ｅは、後述する第５の行列処理における演算の際に引数となる数値を格納する領域である。
【０１４７】
また、本実施の形態の行列演算装置１は、ＲＯＭ７として、図１９に示すＲＯＭ７ｅを用いて構成され、同図に示すようにＲＯＭ７ｅは、割付テーブル７１ｅ及び第５の行列処理プログラム７２ｅを備えて構成される。
【０１４８】
割付テーブル７１ｅは、各行列コントローラに対応付けて割り付けられている演算を記憶しているテーブルである。なお、この割付テーブル７１ｅの場合も、第３の実施の形態の割付テーブル７１ｃと同様に、四則演算に限らず任意の二項演算を行列コントローラに割り付けるようにしてよい。
【０１４９】
第５の行列処理プログラム７２ｅは、本実施の形態の行列処理である第５の行列処理を実現するための処理プログラムである。ＣＰＵ２は、行列演算装置１の電源が投入されると、この第５の行列処理プログラム７２ｅを実行することにより第５の行列処理を行うようになされている。
【０１５０】
図２０は、この第５の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ｅから第５の行列処理プログラム７２ｅを読み出し実行することにより第５の行列処理を行う。以下、この第５の行列処理について、同図を用いて詳細に説明する。
【０１５１】
本処理を開始すると、ＣＰＵ２はまず、ユーザによるモードオンの操作を待ち受け、モードオンを検知すると（ステップＥ１１）、機能実行モードの開始処理を行いステップＥ１５へ移行する（ステップＥ１３）。
【０１５２】
この場合も第１の行列処理等と同様に、ＣＰＵ２は開始処理において、例えば、図２１（ａ）に示すような行列コントローラ、即ち上ボタンｃ１、左ボタンｃ２、下ボタンｃ３及び右ボタンｃ４を表示部３１に表示する。
【０１５３】
本実施の形態の場合、行列コントローラに対するタップを受け付けると、ＣＰＵ２はＲＯＭ７ｅの割付テーブル７１ｅを参照し、タップを受け付けた行列コントローラに割り付けられている演算を実行するようになされている。
【０１５４】
ステップＥ１５へ移行すると、ＣＰＵ２は、ユーザによる行列呼出しの操作を待ち受けて行列呼出しを検知し（ステップＥ１５）、呼び出された行列のデータを行列データ６１ｅに格納し（ステップＥ１７）、表示部３１の成分表示エリアａ１に表示する（ステップＥ１９）。かくして、例えば図２１（ａ）に示すような表示状態となる。
【０１５５】
次いでＣＰＵ２は、行列成分の範囲を指定するユーザ操作を待ち受けてこれを検知する（ステップＥ２１）。この場合ＣＰＵ２は、例えば図２１（ｂ）に示すように、成分表示エリアａ１においてなされるタップイン及びタップアウトを受け付け、タップイン位置及びタップアウト位置に応じた、例えば両位置を対頂角とする長方形に囲まれる成分を、ユーザにより選択された成分範囲（以下、指定範囲と呼ぶ。）として検知する。
【０１５６】
次いでＣＰＵ２は、検知した指定範囲を表す情報、例えば、行番号及び列番号それぞれの範囲を指定範囲６４ｅに保存し（ステップＥ２３）、この指定範囲６４ｅに基づいて指定範囲を反転表示するよう表示の更新を行う（ステップＥ２５）。かくして、例えば図２１（ｂ）に示すような、指定範囲に反転表示ｓ５１が施された表示状態となる。
【０１５７】
次いでＣＰＵ２は、ユーザによる数値のドラッグアンドドロップ操作を待ち受けてこれを検知し（ステップＥ２７）、ステップＥ２９へ移行する。この場合も第４の行列処理と同様に、ＣＰＵ２は、まず数値生成エリアへの数値入力を受け付け、次いで、入力数値がドラッグアンドドロップされるのを検知する。
【０１５８】
ステップＥ２９へ移行すると、ＣＰＵ２は、検知されたドラッグアンドドロップにおけるタップアウト座標の検出を行い（ステップＥ２９）、そのタップアウト座標と行列コントローラの座標とを比較することにより、検知されたドラッグアンドドロップが行列コントローラへのドラッグアンドドロップであったか否かを判別する（ステップＥ３１）。
【０１５９】
行列コントローラへのドラッグアンドドロップであった場合（ステップＥ３１：Ｙｅｓ）、ドラッグアンドドロップされた入力数値を演算引数６５ｅに記憶する（ステップＥ３３）。
【０１６０】
次いでＣＰＵ２は、行列コントローラへのタップを待ち受け、行列コントローラへのタップを検知すると（ステップＥ３５）、行列コントローラに割り付けられた演算を、演算引数６５ｅを引数として、指定範囲の各成分それぞれに対して適用し（ステップＥ３７）、演算結果それぞれを用いて指定範囲の各成分を更新表示する（ステップＥ３９）。
【０１６１】
そしてＣＰＵ２は、次の操作がなされるのを待ち受けて検知し（ステップＥ４１）、行列コントローラへのタップが検出されたか否かを判別する（ステップＥ４３）。
【０１６２】
行列コントローラへのタップが検出された場合（ステップＥ４３：Ｙｅｓ）、ＣＰＵ２はステップＥ３７へ戻る。即ち、行列コントローラに応じた演算を、ドラッグアンドドロップされた入力数値を引数として、指定範囲の各成分それぞれに対して適用するステップＥ３７以降を繰り返すこととなる。
【０１６３】
即ち、例えば図２１（ｃ）に示すように、「＋」（加算）を割り付けられている右ボタンｃ４に対して入力数値「５」をドラッグアンドドロップする操作がなされ、これに続けて、例えば図２１（ｄ）に示すように、右ボタンｃ４がタップされると、指定範囲の各成分（「１」、「４」、「２」及び「５」）それぞれに対して「＋５」が行われ、例えば図２１（ｅ）に示すように、それぞれ「６」、「９」、「７」及び「１０」となる。
【０１６４】
そして、同図に示すように、更に右ボタンｃ４がタップされると、指定範囲の各成分それぞれに対して更に「＋５」が行われ、例えば図２１（ｆ）に示すように、それぞれ「１１」、「１４」、「１２」及び「１５」となる。
【０１６５】
一方、次の操作が行列コントローラへのタップでなく（ステップＥ４３：Ｎｏ）、新たに入力数値をドラッグアンドドロップする操作である場合（ステップＥ４５：Ｙｅｓ）、ＣＰＵ２はステップＥ２９へ戻る。即ちＣＰＵ２は、指定範囲の各成分それぞれと新たな入力数値との間に、入力数値がドラッグアンドドロップされた行列コントローラに割り付けられている演算を、行列コントローラがタップされる度に適用する、ステップＥ２９以降の処理を繰り返し行うこととなる。
【０１６６】
また、次の操作が入力数値をドラッグアンドドロップする操作でなく（ステップＥ４５：Ｎｏ）、終了操作である場合（ステップＥ４７：Ｙｅｓ）、ＣＰＵ２は本処理を終了する。
【０１６７】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、各行列成分と指定した所定の数値との間に同一種類の演算を次々適用する場合に、当該所定の数値のドラッグアンドドロップ操作及びコントローラのタップ操作のみで連続して行うことができる。
【０１６８】
７．第６の実施の形態
本実施の形態の行列演算装置１は、ＲＡＭ６として、図２２に示すＲＡＭ６ｆを用いて構成され、同図に示すようにＲＡＭ６ｆは、行列データ６１ｆ、指定範囲６４ｆ及び適用演算６６ｆを備えて構成される。
【０１６９】
行列データ６１ｆは、第１の実施の形態における行列データ６１ａと同様の、ユーザ操作に応じて呼び出された所定の行列の内容を格納する領域である。
指定範囲６４ｆは、第２の実施の形態におけるアクティブ範囲６４ｂと同様の、演算等、所定の操作を受け付けることとなる成分の範囲を表す情報を格納する領域である。
適用演算６６ｆは、第４の実施の形態における適用演算６６ｄと同様の、後述する第６の行列処理において指定成分と選択成分との間に適用される演算内容を格納する領域である。
【０１７０】
また、本実施の形態の行列演算装置１は、ＲＯＭ７として、図２３に示すＲＯＭ７ｆを用いて構成され、同図に示すようにＲＯＭ７ｆは、割付テーブル７１ｆ及び第６の行列処理プログラム７２ｆを備えて構成される。
【０１７１】
割付テーブル７１ｆは、各行列コントローラに対応付けて割り付けられている演算を記憶しているテーブルである。なお、この割付テーブル７１ｆの場合も、第３の実施の形態の割付テーブル７１ｃと同様に、四則演算に限らず任意の二項演算を行列コントローラに割り付けるようにしてよい。
【０１７２】
第６の行列処理プログラム７２ｆは、本実施の形態の行列処理である第６の行列処理を実現するための処理プログラムである。ＣＰＵ２は、行列演算装置１の電源が投入されると、この第６の行列処理プログラム７２ｆを実行することにより第６の行列処理を行うようになされている。
【０１７３】
図２４は、この第６の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ｆから第６の行列処理プログラム７２ｆを読み出し実行することにより第６の行列処理を行う。以下、この第６の行列処理について、同図を用いて詳細に説明する。
【０１７４】
本処理を開始すると、ＣＰＵ２はまず、ユーザによるモードオンの操作を待ち受け、モードオンを検知すると（ステップＦ１１）、機能実行モードの開始処理を行いステップＦ１５へ移行する（ステップＦ１３）。
【０１７５】
この場合も第１の行列処理等と同様に、ＣＰＵ２は開始処理において、例えば、図２５（ａ）に示すような行列コントローラ、即ち上ボタンｃ１、左ボタンｃ２、下ボタンｃ３及び右ボタンｃ４を表示部３１に表示する。
【０１７６】
本実施の形態の場合、行列コントローラに対するタップを受け付けると、ＣＰＵ２はＲＯＭ７ｆの割付テーブル７１ｆを参照し、タップを受け付けた行列コントローラに割り付けられている演算を実行するようになされている。
【０１７７】
ステップＦ１５へ移行すると、ＣＰＵ２は、ユーザによる行列呼出しの操作を待ち受けて行列呼出しを検知し（ステップＦ１５）、呼び出された行列のデータを行列データ６１ｆに格納し（ステップＦ１７）、表示部３１の、例えば図２５（ａ）に示す成分表示エリアａ１に表示する（ステップＦ１９）。
【０１７８】
次いでＣＰＵ２は、行列成分の行又は列の一部又は全体を範囲指定するユーザ操作を待ち受けてこれを検知する（ステップＦ２１）。この場合ＣＰＵ２は、例えば図２５（ａ）に示すように、成分表示エリアａ１においてなされるタップイン及びタップアウトを受け付け、タップイン位置及びタップアウト位置に応じた成分範囲（以下、指定範囲と呼ぶ。）を検知する。
【０１７９】
次いでＣＰＵ２は、検知した指定範囲を表す情報、例えば、行番号又は列番号と成分の数とを指定範囲６４ｆに保存し（ステップＦ２３）、この指定範囲６４ｆに基づいて指定範囲を反転表示するよう表示の更新を行う（ステップＦ２５）。かくして、例えば図２５（ａ）に示すような、指定範囲の成分（以下、指定成分と呼ぶ。）に反転表示ｓ６１が施された表示状態となる。因みに同図においては第１列全体が指定範囲となっているが、これに限らず、列のうちの部分や、行の全体や部分を指定範囲としてもよい。
【０１８０】
次いでＣＰＵ２は、行列コントローラへのタップを待ち受け、行列コントローラへのタップを検知すると（ステップＦ２７）、タップを受け付けた行列コントローラに割り付けられている演算内容をＲＡＭ６ｆの適用演算６６ｆに記憶する（ステップＦ２９）。
【０１８１】
次いでＣＰＵ２は、ユーザによる指定成分のドラッグアンドドロップ操作を待ち受けてこれを検知する（ステップＦ３１）。そして、検知されたドラッグアンドドロップにおけるタップアウト座標に基づいて、指定成分のドロップ位置にある成分（以下、選択成分と呼ぶ。）の範囲を特定し、指定成分と選択成分との間に、適用演算６６ｆに記憶される演算を実行する（ステップＦ３５）。
【０１８２】
次いでＣＰＵ２は、実行される演算が列演算であるか否かを判別する（ステップＦ４３）。この場合ＣＰＵ２は、例えば、指定範囲が列であれば列演算、指定範囲が行であれば行演算であると判別する。
【０１８３】
列演算である場合は（ステップＦ４３：Ｙｅｓ）、演算結果を表示する解表示エリアを表示部３１の右端に設け（ステップＦ４５）、一方、行演算である場合は（ステップＦ４３：Ｎｏ）、解表示エリアを表示部３１の下端に設け（ステップＦ４７）、演算結果をこの解表示エリアに改めて表示する（ステップＦ４９）。
【０１８４】
従って、例えば図２５（ａ）に示すような、指定成分である第１列に反転表示ｓ６１が施された状態で、「＋」（加算）を割り付けられている右ボタンｃ４がタップされ、例えば図２５（ｂ）に示すように、指定成分を第２列ａ３へドラッグアンドドロップする操作がなされると、例えば図２５（ｃ）に示すように、指定成分とこの場合の選択成分である第２列との間に、対応する成分同士の加算が実行され、かかる列演算の結果が解表示エリアａ４に表示される。
【０１８５】
このように、ＣＰＵ２は、演算結果を解表示エリアａ４に表すのみとし、指定成分である第１列や選択成分である第２列の各成分の値を保存することとなる。
【０１８６】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、演算に係る２つの行又は列の値を壊すことなく行単位又は列単位の演算を行うことができ、従って、行操作の取消しや演算されてしまった行列成分の復帰を行う手間を要することなく、行単位又は列単位の演算を行うことができる。
【０１８７】
８．第７の実施の形態
本実施の形態における行列演算装置１は、第６の実施の形態における行列演算装置１と同様に、タップイン及びタップアウトの操作により範囲指定された指定範囲と、この指定範囲がドラッグアンドドロップされた際のドロップ位置にある選択成分との間に所定の演算を適用して、その演算結果を解表示エリアに別途表示するようになされている。
【０１８８】
即ち、例えば図２９（ａ）に示すように、タップイン及びタップアウトの操作により範囲指定され、反転表示ｓ７１を施された指定範囲が、例えば図２９（ｂ）に示すように、所定の成分のエリアａ５へドラッグアンドドロップされると、指定範囲とエリアａ５の成分である選択成分との間に所定の演算が行われ、図２９（ｃ）に示すように、演算結果が解表示エリアａ６に表示される。
【０１８９】
以下、本実施の形態における行列演算装置１に特徴的な構成について詳述する。その際、上述した第６の実施の形態と同一の構成要素については同一の符号を付し、詳細な説明を省略する。
【０１９０】
図２６は、本実施の形態においてＲＡＭ６として用いられるＲＡＭ６ｇの構成を示す図である。同図に示すようにＲＡＭ６ｇは、まず第６の実施の形態におけるＲＡＭ６ｆと同様の行列データ６１ｆ、指定範囲６４ｆ及び適用演算６６ｆを備えて構成される。
そしてＲＡＭ６ｇは、これらに加えて、解表示サイズ６７ｇ及び解表示位置６８ｇを備えて構成される。
【０１９１】
解表示サイズ６７ｇ及び解表示位置６８ｇは、後述する第７の行列処理において演算結果を表示する解表示エリアの、それぞれ、表示する際の幅や高さとして適切な値（以下、解表示エリアサイズと呼ぶ。）及び表示する際の適切な位置（以下、解表示エリア位置と呼ぶ。）を格納する記憶領域である。
【０１９２】
図２７は、本実施の形態においてＲＯＭ７として用いられるＲＯＭ７ｇの構成を示す図である。同図に示すようにＲＯＭ７ｇは、まず第６の実施の形態におけるＲＯＭ７ｆと同様の割付テーブル７１ｆに加え、本実施の形態の行列処理である第７の行列処理を実現するための第７の行列処理プログラム７２ｇを備えて構成される。
【０１９３】
図２８は、この第７の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ｇから第７の行列処理プログラム７２ｇを読み出し実行することにより第７の行列処理を行う。以下、この第７の行列処理について、同図を用いて詳細に説明する。
【０１９４】
本処理を開始すると、ＣＰＵ２は、第６の行列処理と同様にステップＦ１１〜Ｆ３５を行い、ステップＧ３７へ移行する。
ステップＧ３７へ移行すると、ＣＰＵ２は、解表示エリアサイズ及び解表示エリア位置を算出して、それぞれ解表示サイズ６７ｇ及び解表示位置６８ｇに記憶する（ステップＧ３７及びステップＧ３９）。
【０１９５】
この場合、解表示エリアには指定成分と同数の成分が表示されることから、指定成分に含まれる成分の数に基づいて解表示エリアサイズを算出することが可能である。また、解表示エリア位置は、例えば、指定成分がドラッグアンドドロップされた方向や選択成分の位置に基づいて決定することが可能である。
【０１９６】
次いでＣＰＵ２は、実行される演算が列演算であるか否かを判別する（ステップＧ４３）。
列演算である場合（ステップＧ４３：Ｙｅｓ）、ＣＰＵ２は、解表示サイズ６７ｇに記憶される解表示エリアサイズを高さとして有する解表示エリアを、表示部３１の右端の、解表示位置６８ｇに記憶される解表示エリア位置に設け（ステップＧ４５）、演算結果をこの解表示エリアに改めて表示して本処理を終了する（ステップＧ４９）。
【０１９７】
一方、行演算である場合（ステップＧ４３：Ｎｏ）、ＣＰＵ２は、解表示エリアサイズを幅として有する解表示エリアを、表示部３１の下端の、解表示エリア位置に設け（ステップＧ４７）、演算結果をこの解表示エリアに改めて表示して本処理を終了する（ステップＧ４９）。
【０１９８】
かくして、本実施の形態の行列演算装置１によっても、ユーザは、演算に係る２つの行又は列の値を壊すことなく行単位又は列単位の演算を行うことができる。そして更には、選択された成分数に応じたサイズ及び位置の解表示エリアに演算結果が表示されるから、よりシンプルな行列表示を実現できる。
【０１９９】
９．第８の実施の形態
本実施の形態における行列演算装置１は、第６の実施の形態における行列演算装置１と同様に、タップイン及びタップアウトの操作により範囲指定された指定範囲と、この指定範囲がドラッグアンドドロップされた際のドロップ位置にある選択成分との間に所定の演算を適用して、その演算結果を解表示エリアに別途表示するようになされている。
【０２００】
即ち、例えば図３３（ａ）に示すように、タップイン及びタップアウトの操作により範囲指定され、反転表示ｓ８１を施された指定範囲が、例えば図３３（ｂ）に示すように、所定の成分のエリアａ５へドラッグアンドドロップされると、指定範囲とエリアａ５の成分である選択成分との間に所定の演算が行われ、図３３（ｃ）に示すように、演算結果が解表示エリアａ６に表示される。
【０２０１】
以下、本実施の形態における行列演算装置１に特徴的な構成について詳述する。その際、上述した第６の実施の形態と同一の構成要素については同一の符号を付し、詳細な説明を省略する。
【０２０２】
図３０は、本実施の形態においてＲＡＭ６として用いられるＲＡＭ６ｈの構成を示す図である。同図に示すようにＲＡＭ６ｈは、第６の実施の形態におけるＲＡＭ６ｆと同様の行列データ６１ｆ、指定範囲６４ｆ及び適用演算６６ｆと、これらに加えて操作適用範囲６９ｈとを備えて構成される。
【０２０３】
操作適用範囲６９ｈは、後述する第８の行列処理において解表示エリアからドラッグアンドドロップが行われる際の、ドロップ位置にある成分群の範囲を表す情報を格納する領域であり、例えば当該成分群の行番号及び列番号によりその範囲が特定される。
【０２０４】
図３１は、本実施の形態においてＲＯＭ７として用いられるＲＯＭ７ｈの構成を示す図である。同図に示すようにＲＯＭ７ｈは、まず第６の実施の形態におけるＲＯＭ７ｆと同様の割付テーブル７１ｆに加え、第８の行列処理プログラム７２ｈ及びエラーメッセージ７３ｈを備えて構成される。
【０２０５】
エラーメッセージ７３ｈは、後述する第８の行列処理において解表示エリアからドラッグアンドドロップ操作が行われる際、当該操作が不正な演算に該当する場合に表示されるエラーメッセージの内容が格納されている。
【０２０６】
第８の行列処理プログラム７２ｈは、本実施の形態の行列処理である第８の行列処理を実現するための処理プログラムである。ＣＰＵ２は、行列演算装置１の電源が投入されると、この第７の行列処理プログラム７２ｇを読み出し実行することにより第８の行列処理を行う。
【０２０７】
図３２は、この第８の行列処理を表したフローチャートであり、以下、この第８の行列処理について、同図を用いて詳細に説明する。
本処理を開始すると、ＣＰＵ２は、第６の行列処理と同様にステップＦ１１〜Ｆ２５を行い、ステップＨ３３へ移行する。
【０２０８】
そしてステップＨ３３へ移行すると、ＣＰＵ２は、ユーザによる指定成分のドラッグアンドドロップ操作を待ち受けてこれを検知する（ステップＨ３３）。そして、検知されたドラッグアンドドロップにおけるタップアウト座標に基づいて、指定成分のドロップ位置にある選択成分の範囲を特定し、指定成分と選択成分との間に、適用演算６６ｆに記憶される演算を実行する（ステップＦ３５）。
【０２０９】
次いでＣＰＵ２は、解表示エリアを表示する際の幅や高さとして適切な値である解表示エリアサイズ及び解表示エリアを表示する際の適切な位置である解表示エリア位置を算出し（ステップＨ４１）、表示部３１上の解表示エリア位置に解表示エリアサイズの幅又は高さで表示した解表示エリアに、演算結果を更新表示する（ステップＨ５１）。
【０２１０】
かくして表示部３１においては、例えば図３３（ｃ）に示すような、演算結果が解表示エリアａ６に表示された表示状態となる。
【０２１１】
次いでＣＰＵ２は、解表示エリアに表示される成分群（以下、解表示エリア成分と呼ぶ。）が成分表示エリアａ１内へドラッグアンドドロップされるのを待ち受け、ドラッグアンドドロップ操作を検知すると（ステップＨ５３）、このドラッグアンドドロップ操作により実行される演算が所定の演算操作にとって不正な演算（以下、エラー演算と呼ぶ。）であるか否かを判別する（ステップＨ５５）。
【０２１２】
例えば、上記のステップＨ３３及びＨ５３のドラッグアンドドロップによる一連の操作がガウスの消去法に係る成分間の加減操作である場合に、図３３（ｄ）に示すような、第１及び第２列の成分に由来する解表示エリア成分と第２及び第３列の成分でなる成分エリアａ９との成分同士を加算するといった、ガウスの消去法にとって何ら意味を持たない操作がなされると、ＣＰＵ２はエラー演算の操作であると判別する。
【０２１３】
因みにこの場合、ＣＰＵ２は、解表示エリア成分がドラッグアンドドロップされた際にドロップ位置にある成分の範囲を操作適用範囲６９ｈに記憶し、指定範囲６４ｆとこの操作適用範囲６９ｈとを比較することにより、このドラッグアンドドロップ操作により実行される演算がエラー演算であるか否かを判別することができる。
【０２１４】
そして、エラー演算であると判別されると（ステップＨ５５：Ｙｅｓ）、ＣＰＵ２は、ＲＯＭ７ｈのエラーメッセージ７３ｈを参照して、エラー演算がなされた旨を訴えて操作を続行するか否かをユーザに問うエラーメッセージを表示部３１に表示し（ステップＨ５７）、次いで演算処理を実行して本処理を終了する（ステップＨ５９）。
【０２１５】
かくして、例えば図３３（ｄ）に示すように、解表示エリアから成分エリアａ９へのドラッグアンドドロップがなされ、このドラッグアンドドロップ操作がガウスの消去法にとって無意味な成分加減操作であると、例えば図３３（ｅ）に示すように、かかる操作がガウスの消去法に準じないエラー操作である旨のエラーメッセージを有する警告表示ｓ８２が表示される。
【０２１６】
一方、エラー演算であると判別されなかった場合は（ステップＨ５５：Ｎｏ）、引き続き演算処理を実行して本処理を終了する（ステップＨ５９）。
【０２１７】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、誤った行列操作を行ったことを認識することができる。
【０２１８】
１０．第９の実施の形態
本実施の形態の行列演算装置１は、ＲＡＭ６として、図３４に示すＲＡＭ６ｊを用いて構成され、同図に示すようにＲＡＭ６ｊは、行列データ６１ｊ及び指定範囲６４ｊを備えて構成される。
【０２１９】
行列データ６１ｊは、第１の実施の形態における行列データ６１ａと同様の、ユーザ操作に応じて呼び出された所定の行列の内容を格納する領域である。
指定範囲６４ｊは、第２の実施の形態におけるアクティブ範囲６４ｂと同様の、演算等、所定の操作を受け付けることとなる成分の範囲を表す情報を格納する領域である。
【０２２０】
また、本実施の形態の行列演算装置１は、ＲＯＭ７として、図３５に示すＲＯＭ７ｊを用いて構成され、同図に示すようにＲＯＭ７ｊは、割付テーブル７１ｊ及び第９の行列処理プログラム７２ｊを備えて構成される。
【０２２１】
割付テーブル７１ｊは、各行列コントローラに対応付けて割り付けられている演算を記憶しているテーブルである。なお、この割付テーブル７１ｊの場合も、第３の実施の形態の割付テーブル７１ｃと同様に、四則演算に限らず任意の二項演算を行列コントローラに割り付けるようにしてよい。
【０２２２】
第９の行列処理プログラム７２ｊは、本実施の形態の行列処理である第９の行列処理を実現するための処理プログラムである。ＣＰＵ２は、行列演算装置１の電源が投入されると、この第９の行列処理プログラム７２ｊを実行することにより第９の行列処理を行うようになされている。
【０２２３】
図３６は、この第９の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ｊから第９の行列処理プログラム７２ｊを読み出し実行することにより第９の行列処理を行う。以下、この第９の行列処理について、同図を用いて詳細に説明する。
【０２２４】
本処理を開始すると、ＣＰＵ２はまず、ユーザによるモードオンの操作を待ち受け、モードオンを検知すると（ステップＪ１１）、機能実行モードの開始処理を行いステップＪ１５へ移行する（ステップＪ１３）。
【０２２５】
この場合も第１の行列処理等と同様に、ＣＰＵ２は開始処理において、例えば、図３７（ａ）に示すような行列コントローラ、即ち上ボタンｃ１、左ボタンｃ２、下ボタンｃ３及び右ボタンｃ４を表示部３１に表示する。
【０２２６】
本実施の形態の場合、行列コントローラに対するタップを受け付けると、ＣＰＵ２はＲＯＭ７ｊの割付テーブル７１ｊを参照し、タップを受け付けた行列コントローラに割り付けられている演算を実行するようになされている。
【０２２７】
ステップＪ１５へ移行すると、ＣＰＵ２は、ユーザによる行列呼出しの操作を待ち受けて行列呼出しを検知し（ステップＪ１５）、呼び出された行列のデータを行列データ６１ｊに格納し（ステップＪ１７）、表示部３１の、例えば図３７（ａ）に示す成分表示エリアａ１に表示する（ステップＪ１９）。
【０２２８】
次いでＣＰＵ２は、行列成分の行又は列の一部又は全体を範囲指定するユーザ操作を待ち受けてこれを検知する（ステップＪ２１）。以下、このユーザ操作により範囲指定された成分範囲を指定範囲と呼ぶこととする。
【０２２９】
次いでＣＰＵ２は、検知した指定範囲を表す情報、例えば、行番号又は列番号と成分の数とを指定範囲６４ｊに保存し（ステップＪ２３）、この指定範囲６４ｊに基づいて指定範囲を反転表示するよう表示の更新を行う（ステップＪ２５）。かくして、例えば図３７（ｂ）に示すような、指定範囲の成分（以下、指定成分と呼ぶ。）に反転表示ｓ９１が施された表示状態となる。
【０２３０】
次いでＣＰＵ２は、ユーザによる数値のドラッグアンドドロップ操作を待ち受けてこれを検知する（ステップＪ２７）。この場合も第４の行列処理と同様に、ＣＰＵ２は、まず数値生成エリアへの数値入力を受け付け、次いで、入力数値がドラッグアンドドロップされるのを検知する。
【０２３１】
次いでＣＰＵ２は、このドラッグアンドドロップ操作に予め割り付けられた演算を、指定成分の各成分と入力数値との間に実行し、演算結果を指定成分の各成分の新たな値とする（ステップＪ２９）。
【０２３２】
そしてＣＰＵ２は更に、行列コントローラのうち、このドラッグアンドドロップ操作に伴って実行された演算と同じ演算を割り付けられている行列コントローラの表示様態を変更するよう表示の更新を行う（ステップＪ３１及びＪ３３）。
【０２３３】
従って、例えば図３７（ｂ）に示すように、範囲指定されて反転表示ｓ９１が施された指定成分に、入力数値「４」がドラッグアンドドロップされると、指定成分の各成分と入力数値との間に、例えば加算が実行され、図３７（ｃ）に示すように、指定範囲ａ５の指定成分の各値が演算結果で更新されるとともに、行列コントローラのうち加算を割り付けられている右ボタンｃ４の表示様態が変更される。
【０２３４】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、ドラッグアンドドロップにより実行された演算がどの演算であるのかを行列コントローラの表示様態によって確認することができる。
【０２３５】
１１．第１０の実施の形態
本実施の形態の行列演算装置１は、ＲＡＭ６として、図３８に示すＲＡＭ６ｋを用いて構成され、同図に示すようにＲＡＭ６ｋは、例えば、ユーザ操作に応じて入力された行列の内容を格納する行列データ等を備えて構成される。
【０２３６】
また、本実施の形態の行列演算装置１は、ＲＯＭ７として、図３９に示すＲＯＭ７ｋを用いて構成され、同図に示すようにＲＯＭ７ｋは、本実施の形態の行列処理である第１０の行列処理を実現するための第１０の行列処理プログラム７２ｋを備えて構成される。
【０２３７】
図４０は、この第１０の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ｋから第１０の行列処理プログラム７２ｋを読み出し実行することにより第１０の行列処理を行う。以下、この第１０の行列処理について、同図を用いて詳細に説明する。
【０２３８】
本処理を開始すると、ＣＰＵ２はまず、ユーザによるモードオンの操作を待ち受け、モードオンを検知すると（ステップＫ１１）、機能実行モードの開始処理を行いステップＫ１５へ移行する（ステップＫ１３）。
【０２３９】
この場合、例えば図４１（ａ）に示すように、ＣＰＵ２は、第１の行列処理等と同様の行列コントローラ、即ち上ボタンｃ１、左ボタンｃ２、下ボタンｃ３及び右ボタンｃ４に加えて、行列の新規作成を行う動作状態（以下、行列作成モードと呼ぶ。）を開始するための新規作成ボタンｃ５を表示部３１に表示する。
【０２４０】
本実施の形態の場合、行列コントローラに対するタップを受け付けると、後述するようにＣＰＵ２は、新規作成する行列（以下、新規行列と呼ぶ。）の行数や列数を増減するようになされている。
【０２４１】
ステップＫ１５へ移行すると、ＣＰＵ２は、行列作成モードを開始する操作、即ち新規作成ボタンｃ５へのタップを待ち受け、かかる操作がなされると（ステップＫ１５）、行列作成モードの開始処理を行いステップＫ１９へ移行する（ステップＫ１７）。
【０２４２】
この場合、例えば図４１（ｂ）に示すように、ＣＰＵ２は表示部３１に初期状態の新規行列（以下、初期行列と呼ぶ。）として、例えば（１，１）成分が「０」である１×１行列を表示し、また、表示部３１から新規作成ボタンｃ５を消去する。
【０２４３】
次いでステップＫ１９において、ＣＰＵ２は、行列コントローラへのタップを待ち受け、タップを検知すると（ステップＫ１９）、ステップＫ２１〜Ｋ４５を行うことにより、タップを受け付けた行列コントローラに応じて新規行列の行数又は列数を増加又は減少させる。
【０２４４】
即ち、タップを受け付けた行列コントローラが上ボタンｃ１である場合（ステップＫ２１：Ｙｅｓ）、ＣＰＵ２は、新規行列の行数を１つ減らし（ステップＫ２３）、表示の更新を行う（ステップＫ２５）。ただしこの場合、新規行列の行数を１より小さくはしないものとする。
【０２４５】
また、タップを受け付けた行列コントローラが下ボタンｃ３である場合（ステップＫ２７：Ｙｅｓ）、ＣＰＵ２は、新規行列の行数を１つ増やし（ステップＫ２９）、表示の更新を行う（ステップＫ３１）。この場合、新たに生じた行の各成分の値は、例えば「０」とする。
【０２４６】
また、タップを受け付けた行列コントローラが左ボタンｃ２である場合（ステップＫ３３：Ｙｅｓ）、ＣＰＵ２は、新規行列の列数を１つ減らし（ステップＫ３５）、表示の更新を行う（ステップＫ３７）。ただしこの場合、新規行列の列数を１より小さくはしないものとする。
【０２４７】
また、タップを受け付けた行列コントローラが右ボタンｃ４である場合（ステップＫ３９：Ｙｅｓ）、ＣＰＵ２は、新規行列の行数を１つ増やし（ステップＫ４１）、表示の更新を行う（ステップＫ４３）。この場合、新たに生じた列の各成分の値は、例えば「０」とする。
【０２４８】
そしてＣＰＵ２は、確定操作が検知されたか否かを判別して（ステップＫ４５）、確定操作が検知されない限り（ステップＫ４５：Ｎｏ）、ステップＫ１９へ戻り、引き続き、タップを受け付けた行列コントローラに応じて新規行列の行数又は列数を増加又は減少させるステップＫ２１〜Ｋ４５を行う。
【０２４９】
かくして、例えば図４１（ｂ）に示すように、行列作成モードを開始して直後の、初期行列である新規行列が表示された状態において、例えば図４１（ｃ）に示すような右ボタンｃ４をタップする操作が２回行われると、新規行列の列数が２つ増加し、図４１（ｄ）に示すような、全成分が「０」である１×３行列が作成される。
【０２５０】
そして、同図に示すような、新規行列として１×３行列が表示されている状態において、更に、下ボタンｃ３をタップする操作が１回行われると、新規行列の行数が１つ増加し、図４１（ｅ）に示すような、全成分が「０」である２×３行列が作成される。
【０２５１】
一方、ステップＫ４５において確定操作が検知されると（ステップＫ４５：Ｙｅｓ）、ＣＰＵ２は本処理を終了する。
【０２５２】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、行列コントローラへのタップ操作のみによって所望のサイズの行列を得ることができる。
【０２５３】
１２．第１１の実施の形態
本実施の形態の行列演算装置１は、ＲＡＭ６として、図４２に示すＲＡＭ６ｍを用いて構成され、同図に示すようにＲＡＭ６ｍは、行列データ６１ｍを備えて構成される。
【０２５４】
行列データ６１ｍは、ユーザ操作に応じて呼び出された所定の行列の内容を格納する領域である。本実施の形態の行列データ６１ｍの場合、複数個の行列の内容を格納できるようになされている。
【０２５５】
また、本実施の形態の行列演算装置１は、ＲＯＭ７として、図４３に示すＲＯＭ７ｍを用いて構成され、同図に示すようにＲＯＭ７ｍは、第１１の行列処理プログラム７２ｍを備えて構成される。
【０２５６】
図４４は、この第１１の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ｍから第１１の行列処理プログラム７２ｍを読み出し実行することにより第１１の行列処理を行う。以下、この第１１の行列処理について、同図を用いて詳細に説明する。
【０２５７】
本処理を開始すると、ＣＰＵ２はまず、ユーザによるモードオンの操作を待ち受け、モードオンを検知すると（ステップＭ１１）、機能実行モードの開始処理を行いステップＭ１５へ移行する（ステップＭ１３）。
【０２５８】
この場合ＣＰＵ２は、例えば図４５（ａ）に示すように、ユーザ操作により呼び出され行列データ６１ｍに記憶されている行列を表示するための行列表示エリアａ７と、行列演算式を表示するための行列演算エリアａ８とを表示部３１に設けるように表示制御を行う。
【０２５９】
この行列表示エリアａ７は、更に、呼び出されている複数の行列に対応する複数のタブを備えて構成されている。各タブはそれぞれ１つの行列に対応し、タップを受け付けたタブに対応する行列が表示されるようになされている。即ち、行列表示エリアａ７においては、タブにより行列を切り替えて使用できるようになされている。
【０２６０】
ステップＭ１５へ移行すると、ＣＰＵ２は、ユーザによる行列呼出しの操作を待ち受けて行列呼出しを検知し（ステップＭ１５）、呼び出された各行列のデータを行列データ６１ｍに格納する（ステップＭ１７）。
【０２６１】
そしてＣＰＵ２は、行列データ６１ｍにおける、例えば最初の行列データを、表示部３１の行列表示エリアａ７における最初のタブに表示する（ステップＭ１９）。かくして、表示部３１においては、例えば図４５（ａ）に示すように、ユーザ操作により呼び出された行列のうちの１つが行列表示エリアａ７に表示された表示状態となる。
【０２６２】
次いでＣＰＵ２は、行列表示エリアａ７において行列を表示しているタブ（以下、アクティブタブと呼ぶ。）を切り替えるユーザ操作を待ち受け、これを検知すると（ステップＭ２１）、タップを受け付けたタブをアクティブタブとすることにより、行列表示エリアａ７に表示されている行列（以下、アクティブ行列と呼ぶ。）を、新たなアクティブタブに対応する行列に切り替えて（ステップＭ２３）表示更新する（ステップＭ２５）。
【０２６３】
次いでＣＰＵ２は、アクティブ行列を行列演算エリアａ８へドラッグアンドドロップするユーザ操作を待ち受け、これを検知すると（ステップＭ２７）、アクティブ行列を行列演算エリアａ８へ出力して（ステップＭ２９）表示更新する（ステップＭ３１）。
【０２６４】
次いでＣＰＵ２は、演算子の入力が検知されたか否かを判別し（ステップＭ３３）、検知された場合には（ステップＭ３３：Ｙｅｓ）、入力された演算子を行列演算エリアａ８へ出力して（ステップＭ３５）表示更新する（ステップＭ３７）。
【０２６５】
そしてＣＰＵ２は、数式を確定する入力（以下、数式確定入力と呼ぶ。）が検知されたか否か、即ち「＝」キー等の入力がなされたか否かを判別して（ステップＭ３９）、数式確定入力が検知されない限り（ステップＭ３９：Ｎｏ）、ステップＭ２１へ戻り、引き続き、別のタブの行列が行列演算エリアａ８へドラッグアンドドロップされるのを待ち受けて、ドラッグアンドドロップされた行列や入力される演算子を行列演算エリアａ８へ出力するステップＭ２１〜Ｍ３９を行う。
【０２６６】
かくして、例えば図４５（ｂ）に示すように、行列表示エリアａ７に表示される第１の行列が行列演算エリアａ８へドラッグアンドドロップされ、更に続けて演算子「＋」がキー入力されると、例えば図４５（ｃ）に示すような、行列演算エリアａ８に第１の行列と「＋」とが続けて記述された表示状態となる。
【０２６７】
また、これに続けて、同図に示すように、第２のタブがタップされると、例えば図４５（ｄ）に示すように、第２のタブがアクティブタブに切り替わり、第２のタブに対応する第２の行列がアクティブ行列となる。
【０２６８】
更に、これに続けて、同図に示すように、既に第１の行列及び「＋」が表示されている行列演算エリアａ８へ第２の行列がドラッグアンドドロップされると、例えば図４５（ｅ）に示すような、行列演算エリアａ８に第１の行列と「＋」と第２の行列とが続けて記述された表示状態となる。
【０２６９】
一方、ステップＭ３９において数式確定入力が検知されると（ステップＭ３９：Ｙｅｓ）、ＣＰＵ２は、行列演算エリアａ８に記述されている内容の演算を実行し（ステップＭ４１）、行列表示エリアａ７に新たに設けた結果表示用のタブに演算結果を出力して（ステップＭ４３）表示を更新して本処理を終了する（ステップＭ４５）。
【０２７０】
従って、例えば図４５（ｅ）に示すような、行列演算エリアａ８に第１の行列と「＋」と第２の行列とが続けて記述された表示状態において、「＝」キーが入力されると、例えば図４５（ｆ）に示すような、新たに設けられた演算結果用の「Ａｎｓ」タブに第１の行列と第２の行列との和が行列表示エリアａ７に表示された表示状態となる。
【０２７１】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、ドラッグアンドドロップ及びタップを主体とする入力操作によって、また、現在入力中の行列演算式全体を認識しながら、行列演算式の入力や実行を行うことができる。
【０２７２】
１３．第１２の実施の形態
本実施の形態の行列演算装置１は、ＲＡＭ６として、図４６に示すＲＡＭ６ｎを用いて構成され、同図に示すようにＲＡＭ６ｎは、行列データ６１ｎ、適用演算６６ｎ及び保持カウンタ６０ｎを備えて構成される。
【０２７３】
行列データ６１ｎは、第１の実施の形態における行列データ６１ａと同様の、ユーザ操作に応じて呼び出された所定の行列の内容を格納する領域である。
適用演算６６ｎは、後述する第１２の行列処理において指定成分と選択成分との間に適用される演算内容を格納する領域である。
【０２７４】
保持カウンタ６０ｎは、後述する第１２の行列処理において、タップイン状態が保たれた時間を計数するための領域である。この場合、ＣＰＵ２は、タブレット４１へのタップインを検知すると、まず保持カウンタ６０ｎの値を０とし、以降、タップイン状態が終了するまでの間、所定のタイミングで（例えば０．１秒毎に）保持カウンタ６０ｎの変数を次々インクリメントするようになされている。
【０２７５】
また、本実施の形態の行列演算装置１は、ＲＯＭ７として、図４７に示すＲＯＭ７ｎを用いて構成され、同図に示すようにＲＯＭ７ｎは、第１２の行列処理プログラム７２ｎを備えて構成される。
【０２７６】
図４８は、この第１２の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ｎから第１２の行列処理プログラム７２ｎを読み出し実行することにより第１２の行列処理を行う。以下、この第１２の行列処理について、同図を用いて詳細に説明する。
【０２７７】
本処理を開始すると、ＣＰＵ２はまず、ユーザによるモードオンの操作を待ち受け、モードオンを検知すると（ステップＮ１１）、機能実行モードの開始処理として、例えば、行列コントローラの表示等を行う（ステップＮ１３）。
【０２７８】
次いでＣＰＵ２は、ユーザによる行列呼出しの操作を待ち受けて行列呼出しを検知し（ステップＮ１５）、呼び出された行列のデータを行列データ６１ｎに格納し（ステップＮ１７）、表示部３１の、例えば図４９（ａ）に示す成分表示エリアａ１に表示する（ステップＮ１９）。かくして表示部３１においては、同図に示すような表示状態となる
【０２７９】
次いでＣＰＵ２は、行列成分の位置にタップインがなされるのを待ち受け、これを検知すると（ステップＮ２１）、以降、このタップイン操作がなされている状態（以下、タップイン状態と呼ぶ。）が継続した時間に応じた演算子を適用演算６６ｎに記憶し、また、当該演算子を表すアイコン（以下、演算子アイコンと呼ぶ。）をタップイン位置にある成分（以下、選択成分と呼ぶ。）の近傍に表示するようになされている。
【０２８０】
即ち、ＣＰＵ２はまず、最初の演算子に対応する演算子アイコンを選択成分の近傍に表示し（ステップＮ２３）、当該演算子を適用演算６６ｎに記憶する（ステップＮ２５）。
【０２８１】
そしてＣＰＵ２は、タップイン状態を解除する所定の操作（以下、状態解除操作と呼ぶ。）が検知されたか否かを判別し（ステップＮ２７）、検知されなければ（ステップＮ２７：Ｎｏ）、ドラッグアンドドロップが検知されたか否か、即ち、タップイン状態からドラッグアンドドロップへ移行したか否かを判別する（ステップＮ２９）。なお、本実施の形態においては、ドラッグアンドドロップやドラッグが開始されるとタップイン状態が終了するものとする。
【０２８２】
ドラッグアンドドロップが検知されない、即ちタップイン状態が継続している場合（ステップＮ２９：Ｎｏ）、ＣＰＵ２は、保持カウンタ６０ｎの値と所定の値とを比較することにより、タップイン状態の継続が所定時間を経過したか否かを判別する（ステップＮ３１）。
【０２８３】
因みに、保持カウンタ６０ｎにおける計時動作に係る処理については特に図示しないが、本処理とは独立に行われているとし、ＣＰＵ２は必要に応じて任意の経過期間を計時し得るようになされていることとする。
【０２８４】
タップイン状態の継続が所定時間を経過するまでの間は（ステップＮ３１：Ｎｏ）、ステップＮ２７へ戻り、ステップＮ２７以降を繰り返し行うこととなる。そして、タップイン状態の継続が所定時間を経過すると、ＣＰＵ２は、適用演算６６ｎに記憶している演算子を次の演算子に切り替えて改めて記憶し、また、演算子アイコンをその新たな演算子に対応する演算子アイコンに切り替えて、ステップＮ２７へ戻る（ステップＮ３３）。この場合、ＣＰＵ２は、保持カウンタ６０ｎの値を０にリセットすることとする。
【０２８５】
従って、タップイン状態が継続すると、即ち、状態解除操作がなされず、また、タップイン状態からドラッグアンドドロップへ移行しない限り、ステップＮ２７〜Ｎ３３が行われることにより、演算子アイコン及び適用演算６６ｎに記憶されている演算子がタップイン状態の継続期間に応じて次々と変化することとなる。
【０２８６】
かくして、例えば図４９（ｂ）に示すように、ユーザが任意に選択した選択成分、例えば（１，３）成分ｓｃ１の位置においてタップインがなされると、まず、図４９（ｃ）に示すように、最初の演算子である、例えば加算に対応する「＋」を表す演算子アイコンｓｃ２が（１，３）成分ｓｃ１の近傍に表示される。
【０２８７】
そして、同図に示すような、最初の演算子アイコンｓｃ２が選択成分の近傍に表示されている状態において、更にタップイン状態を保って所定時間が経過すると、例えば図４９（ｄ）に示すような、選択成分近傍の演算子アイコンが、次の演算子である乗算に対応する「×」を表す演算子アイコンｓｃ３に変化した表示状態となる。
【０２８８】
次に、タップイン状態からドラッグアンドドロップへの移行を検知すると（ステップＮ２９：Ｙｅｓ）、ＣＰＵ２は、ドロップの操作に応じてドロップ位置の検出を行う（ステップＮ３５）。
【０２８９】
次いでＣＰＵ２は、ドロップ位置に該当する成分（以下、ドロップ位置成分と呼ぶ。）と選択成分との間に、適用演算６６ｎに記憶されている演算を実行して（ステップＮ３７）表示を更新して本処理を終了する（ステップＮ３９）。
【０２９０】
かくして、例えば図４９（ｄ）に示すように、選択成分近傍の演算子アイコンとして演算「×」を表す演算子アイコンｓｃ３が表示されている状態において、選択成分が（３，３）成分ｓｃ４へドロップされると、選択成分の値「７」とドロップ位置成分ｓｃ４の値「９」との間に「×」が実行され、図４９（ｅ）に示すような、演算結果である「６３」がドロップ位置成分ｓｃ４の新たな値として表示された状態となる。
【０２９１】
また、タップイン状態において状態解除操作を検知すると（ステップＮ２７：Ｙｅｓ）、ＣＰＵ２は、タップイン状態を解除して本処理を終了する（ステップＮ４１）。
【０２９２】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、ポインティングデバイスを用いた操作のみによって行列の成分同士の演算を行うことができる。また、この場合、行列コントローラを用いて演算を指定する操作をも省略することができるから、より少ない手間で行列の成分同士の演算を行うことができる。
【０２９３】
１４．第１３の実施の形態
本実施の形態の行列演算装置１は、ＲＡＭ６として、図５０に示すＲＡＭ６ｐを用いて構成され、同図に示すようにＲＡＭ６ｐは、行列データ６１ｐ及び指定範囲６４ｐを備えて構成される。
【０２９４】
行列データ６１ｐは、第１の実施の形態における行列データ６１ａと同様の、ユーザ操作に応じて呼び出された所定の行列の内容を格納する領域である。
【０２９５】
指定範囲６４ｐは、第２の実施の形態におけるアクティブ範囲６４ｂと同様の、演算等、所定の操作を受け付けることとなる成分の範囲を表す情報を格納する領域である。本実施の形態においては、かかる成分の範囲は三角形状に並ぶ成分群により構成される場合が多いが、そのような場合、例えば、三角形状に並ぶ成分群の３頂点それぞれについての行及び列を指定範囲６４ｐに記憶すればよい。
【０２９６】
また、本実施の形態の行列演算装置１は、ＲＯＭ７として、図５１に示すＲＯＭ７ｐを用いて構成され、同図に示すようにＲＯＭ７ｐは、第１３の行列処理プログラム７２ｐ及び枠メニューデータ７３ｐを備えて構成される。
【０２９７】
枠メニューデータ７３ｐは、後述する第１３の行列処理においてユーザ操作により呼び出される枠メニューに表示する各枠のデータを格納する領域である。
【０２９８】
第１３の行列処理プログラム７２ｐは、本実施の形態の行列処理である第１３の行列処理を実現するための処理プログラムである。ＣＰＵ２は、行列演算装置１の電源が投入されると、この第１３の行列処理プログラム７２ｐを実行することにより第１３の行列処理を行うようになされている。
【０２９９】
図５２は、この第１３の行列処理を表したフローチャートである。ＣＰＵ２は、行列演算装置１の電源が投入されると、ＲＯＭ７ｐから第１３の行列処理プログラム７２ｐを読み出し実行することにより第１３の行列処理を行う。以下、この第１３の行列処理について、同図を用いて詳細に説明する。
【０３００】
本処理を開始すると、ＣＰＵ２はまず、ユーザによるモードオンの操作を待ち受け、モードオンを検知すると（ステップＰ１１）、機能実行モードの開始処理として、例えば、行列コントローラの表示等を行う（ステップＰ１３）。
【０３０１】
次いでＣＰＵ２は、ユーザによる行列呼出しの操作を待ち受けて行列呼出しを検知し（ステップＰ１５）、呼び出された行列のデータを行列データ６１ｐに格納し（ステップＰ１７）、表示部３１の、例えば図５３（ａ）に示す成分表示エリアａ１に表示する（ステップＰ１９）。かくして表示部３１においては、同図に示すような表示状態となる
【０３０２】
次いでＣＰＵ２は、枠メニューを呼び出す所定の操作、例えば枠メニューを呼び出すための「枠メニュー」キーの押下等を待ち受け、かかる操作がなされたことを検知すると（ステップＰ２１）、ＲＯＭ７ｐの枠メニューデータ７３ｐから各枠データを読み出し、表示部３１の所定の位置に各枠を表示し（ステップＰ２３）、表示更新する（ステップＰ２５）。
【０３０３】
この場合、「枠」とは、行列中の成分を選択するための所定の形状の閉図形のことであり、ＣＰＵ２は、ＲＯＭ７ｐの枠メニューデータ７３ｐから読み出した各枠データに対応する各枠を、例えば、この各枠の表示に先駆けて表示部３１の所定の位置に設けられる枠パレット内に表示する。また、こうして表示される各枠はドラッグアンドドロップによる操作が可能であるように、ＣＰＵ２によって制御される。
【０３０４】
かくして、ユーザにより「枠メニュー」キーの押下等が行われると、例えば図５３（ｂ）に示すような、所定の位置に設けられた枠パレットｓｄ１内に、ドラッグアンドドロップ操作が可能な、例えば、上三角枠ｓｄ２や下三角枠ｓｄ３といった枠が表示された状態となる。
【０３０５】
次いでＣＰＵ２は、枠へのドラッグアンドドロップを待ち受けて、これを検知すると（ステップＰ２７）、当該ドラッグアンドドロップにおけるドロップ位置を検出することにより、ドロップされた枠に囲まれている成分を演算対象として特定する（ステップＰ２９）。
【０３０６】
次いでＣＰＵ２は、この演算対象である成分（以下、演算対象成分と呼ぶ。）の値を全て「０」にする所定の演算が可能であるか否かを判別する（ステップＰ３１）。例えば、表示部３１に表示している行列（以下、元行列と呼ぶ。）に対等（基本変形の繰り返しにより移り合う関係）で演算対象成分の値が全て「０」である行列が存在するか否かを判別する。
【０３０７】
かかる演算が可能である場合（ステップＰ３１：Ｙｅｓ）、ＣＰＵ２は、かかる演算を実行して（ステップＰ３３）表示更新して本処理を終了する（ステップＰ３５）。
【０３０８】
従って、例えば図５３（ｂ）に示す枠パレットｓｄ１から下三角枠ｓｄ３が選択され、図５３（ｃ）及び図５３（ｄ）に示すように、この下三角枠ｓｄ３が（２，１）、（３，１）及び（３，２）成分を囲むようにドロップされると、当該３成分全てを「０」にする所定の演算として、例えば当該３成分が「０」である対等な行列への変形が、元行列に対して行われ、図５３（ｅ）に示すような、元行列に対等な行列ｓｄ４が表示された状態となる。
【０３０９】
一方、演算対象成分の値を全て「０」にする所定の演算が可能でない場合（ステップＰ３１：Ｎｏ）、かかる所定の演算が可能でない旨のエラーメッセージを表示して本処理を終了する（ステップＰ３７）。
【０３１０】
かくして、本実施の形態の行列演算装置１によれば、ユーザは、行列の一部の成分を基本変形等により０にする演算を、枠のドラッグアンドドロップ操作といった直感的な操作により行うことができる。
【図面の簡単な説明】
【０３１１】
【図１】本発明の行列演算装置の回路構成を示す図である。
【図２】第１の実施の形態におけるＲＡＭの構成を示す図である。
【図３】第１の実施の形態におけるＲＯＭの構成を示す図である。
【図４】第１の行列処理を示す図である。
【図５】第１の実施の形態における表示部を示す図である。
【図６】第２の実施の形態におけるＲＡＭの構成を示す図である。
【図７】第２の実施の形態におけるＲＯＭの構成を示す図である。
【図８】第２の行列処理を示す図である。
【図９】第２の実施の形態における表示部を示す図である。
【図１０】第３の実施の形態におけるＲＡＭの構成を示す図である。
【図１１】第３の実施の形態におけるＲＯＭの構成を示す図である。
【図１２】第３の行列処理を示す図である。
【図１３】第３の実施の形態における表示部を示す図である。
【図１４】第４の実施の形態におけるＲＡＭの構成を示す図である。
【図１５】第４の実施の形態におけるＲＯＭの構成を示す図である。
【図１６】第４の行列処理を示す図である。
【図１７】第４の実施の形態における表示部を示す図である。
【図１８】第５の実施の形態におけるＲＡＭの構成を示す図である。
【図１９】第５の実施の形態におけるＲＯＭの構成を示す図である。
【図２０】第５の行列処理を示す図である。
【図２１】第５の実施の形態における表示部を示す図である。
【図２２】第６の実施の形態におけるＲＡＭの構成を示す図である。
【図２３】第６の実施の形態におけるＲＯＭの構成を示す図である。
【図２４】第６の行列処理を示す図である。
【図２５】第６の実施の形態における表示部を示す図である。
【図２６】第７の実施の形態におけるＲＡＭの構成を示す図である。
【図２７】第７の実施の形態におけるＲＯＭの構成を示す図である。
【図２８】第７の行列処理を示す図である。
【図２９】第７の実施の形態における表示部を示す図である。
【図３０】第８の実施の形態におけるＲＡＭの構成を示す図である。
【図３１】第８の実施の形態におけるＲＯＭの構成を示す図である。
【図３２】第８の行列処理を示す図である。
【図３３】第８の実施の形態における表示部を示す図である。
【図３４】第９の実施の形態におけるＲＡＭの構成を示す図である。
【図３５】第９の実施の形態におけるＲＯＭの構成を示す図である。
【図３６】第９の行列処理を示す図である。
【図３７】第９の実施の形態における表示部を示す図である。
【図３８】第１０の実施の形態におけるＲＡＭの構成を示す図である。
【図３９】第１０の実施の形態におけるＲＯＭの構成を示す図である。
【図４０】第１０の行列処理を示す図である。
【図４１】第１０の実施の形態における表示部を示す図である。
【図４２】第１１の実施の形態におけるＲＡＭの構成を示す図である。
【図４３】第１１の実施の形態におけるＲＯＭの構成を示す図である。
【図４４】第１１の行列処理を示す図である。
【図４５】第１１の実施の形態における表示部を示す図である。
【図４６】第１２の実施の形態におけるＲＡＭの構成を示す図である。
【図４７】第１２の実施の形態におけるＲＯＭの構成を示す図である。
【図４８】第１２の行列処理を示す図である。
【図４９】第１２の実施の形態における表示部を示す図である。
【図５０】第１３の実施の形態におけるＲＡＭの構成を示す図である。
【図５１】第１３の実施の形態におけるＲＯＭの構成を示す図である。
【図５２】第１３の行列処理を示す図である。
【図５３】第１３の実施の形態における表示部を示す図である。
【符号の説明】
【０３１２】
１  行列演算装置
２  ＣＰＵ
６０ｎ  保持カウンタ
６１ａ，６１ｂ，６１ｃ，６１ｄ，６１ｅ，６１ｆ，６１ｊ，６１ｍ，６１ｎ，６１ｐ  行列データ
６４ｂ  アクティブ範囲
６４ｅ，６４ｆ，６４ｐ  指定範囲
６５ｃ，６５ｅ  演算引数
６６ｄ，６６ｆ，６６ｎ  適用演算
６７ｇ  解表示サイズ
６８ｇ  解表示位置
６９ｈ  操作適用範囲
７３ｈ  エラーメッセージ
ａ４，ａ６  解表示エリア
ａ５  指定範囲
ａ８  行列演算エリア
ａ９  成分エリア
ｃ１  上ボタン
ｃ２  左ボタン
ｃ３  下ボタン
ｃ４  右ボタン
ｓｃ２，ｓｃ３  演算子アイコン
ｓｃ４  ドロップ位置成分
ｓｄ２  上三角枠
ｓｄ３  下三角枠
ｓｄ４  対等な行列
【図１】
2006018747.tif 000003
【図２】
2006018747.tif 000004
【図３】
2006018747.tif 000005
【図４】
2006018747.tif 000006
【図５】
2006018747.tif 000007
【図６】
2006018747.tif 000008
【図７】
2006018747.tif 000009
【図８】
2006018747.tif 000010
【図９】
2006018747.tif 000011
【図１０】
2006018747.tif 000012
【図１１】
2006018747.tif 000013
【図１２】
2006018747.tif 000014
【図１３】
2006018747.tif 000015
【図１４】
2006018747.tif 000016
【図１５】
2006018747.tif 000017
【図１６】
2006018747.tif 000018
【図１７】
2006018747.tif 000019
【図１８】
2006018747.tif 000020
【図１９】
2006018747.tif 000021
【図２０】
2006018747.tif 000022
【図２１】
2006018747.tif 000023
【図２２】
2006018747.tif 000024
【図２３】
2006018747.tif 000025
【図２４】
2006018747.tif 000026
【図２５】
2006018747.tif 000027
【図２６】
2006018747.tif 000028
【図２７】
2006018747.tif 000029
【図２８】
2006018747.tif 000030
【図２９】
2006018747.tif 000031
【図３０】
2006018747.tif 000032
【図３１】
2006018747.tif 000033
【図３２】
2006018747.tif 000034
【図３３】
2006018747.tif 000035
【図３４】
2006018747.tif 000036
【図３５】
2006018747.tif 000037
【図３６】
2006018747.tif 000038
【図３７】
2006018747.tif 000039
【図３８】
2006018747.tif 000040
【図３９】
2006018747.tif 000041
【図４０】
2006018747.tif 000042
【図４１】
2006018747.tif 000043
【図４２】
2006018747.tif 000044
【図４３】
2006018747.tif 000045
【図４４】
2006018747.tif 000046
【図４５】
2006018747.tif 000047
【図４６】
2006018747.tif 000048
【図４７】
2006018747.tif 000049
【図４８】
2006018747.tif 000050
【図４９】
2006018747.tif 000051
【図５０】
2006018747.tif 000052
【図５１】
2006018747.tif 000053
【図５２】
2006018747.tif 000054
【図５３】
2006018747.tif 000055