各電卓で上式の計算を行い、その計算にかかる時間を測定しました。
nの値は、10
2
, 10
3
, 10
4
, 10
5
の4つです。それぞれの値で測定を行いました。
総和の計算は、加算を繰り返しているだけなので、電卓の演算速度を比較的素直に表していると考えられます。
CAS(数式処理システム) 搭載電卓は通常操作において、超越関数や数学定数(π,eなど)を数値化しません。そのため、特殊な操作をしたり、設定を変更する必要があります。
SwissMicros DM42 は、「統計の総和」はあるのですが、「数式の総和」を計算する機能はないようです。
そのため、数式の総和を求めるにはプログラムを組むしかありません。
しかし、他の機種と公平な比較にはならないかもしれませんので、参考までにして下さい。
2021年5月16日の3回目測定は、以下の「プログラム BM01B」を使いました。以前の「BM01A」よりも整理されたコードです。
「プログラム BM01B」は、特に効率を追求したものではありません。
[XEQ] [BM01B] と押して実行すると、"N?" と表示されますので、n の値を入れてから [R/S] キーを押すと計算が始まります。
DM42 は電池動作時とUSB給電時で CPU のクロック周波数が変化します。
電池動作時は 24MHz、USB給電時は 80MHz になります。それぞれのクロック周波数に対して測定を行なっています。
HP 35s は、「統計の総和」はあるのですが、「数式の総和」を計算する機能はないようです。
そのため、数式の総和を求めるにはプログラムを組むしかありません。
しかし、他の機種と公平な比較にはならないかもしれませんので、参考までにして下さい。
今回は以下の「プログラム B」を使いました。
[XEQ] [B] [ENTER]と押して実行すると、"N?" と表示されますので、n の値を入れてから [R/S] キーを押すと計算が始まります。
参考値としてwxMaxima(PC用数式処理ソフト)の計算結果(16桁)を使っています。参考値がどの桁まで正確なのかよく分かりませんが、ここで扱う電卓よりも高精度なのは間違いないと思われます。
参考値と異なる計算結果の一部は
例えば、参考値が1.235のとき、計算結果が1.23ならば、1.2
参考値(wxMaximaによる): 4941.829140522997
機種名 | 種別 |
ファームウェア
バージョン |
計算結果(桁数) | 計算時間 | 備考 |
---|---|---|---|---|---|
HP Prime (Home表示) | グラフ電卓(CAS有) | 2.0.0.13865 |
4941.8291405
|
1秒未満 | Home表示=CASなしモード |
HP Prime (CAS表示) | グラフ電卓(CAS有) | 2.0.0.13865 | 4941.82914052(12桁) | 1秒未満 | Exact:OFF,Complex:OFF |
SwissMicros DM42 (USB給電) | 関数電卓 | DM42 v3.19 | 4941.82914052(12桁) | 1秒未満 | プログラムによる参考測定。表示モード : ALL |
TI-Nspire CX CAS | グラフ電卓(CAS有) | 4.3.0.702 | 4941.82914052(12桁) | 1秒未満 | Calculation Mode:Auto, 最大12桁表示に設定 |
SwissMicros DM42 (電池動作) | 関数電卓 | DM42 v3.19 | 4941.82914052(12桁) | 1秒未満 | プログラムによる参考測定。表示モード : ALL |
CASIO fx-CG50 | グラフ電卓(CAS無) | 03.10.0212 | 4941.829141(10桁) | 1秒未満 | |
CASIO fx-CG10 | グラフ電卓(CAS無) | 02.02.3211 | 4941.829141(10桁) | 1秒 | fx-CG20同等品 |
CASIO fx-9750GII | グラフ電卓(CAS無) | 02.04.0701 | 4941.829141(10桁) | 1秒 | |
CASIO fx-9860GII | グラフ電卓(CAS無) | 02.09.0201 | 4941.829141(10桁) | 2秒 | |
TI-84 Plus CE | グラフ電卓(CAS無) | 5.2.2.0043 | 4941.829141(10桁) | 3秒 | |
HP 50g | グラフ電卓(CAS有) | 2.15 |
4941.8291405
|
3秒 | Approx:ON,Complex:OFF |
TI-89 Titanium | グラフ電卓(CAS有) | 3.10 | 4941.82914052(12桁) | 5秒 | Exact/Approx:AUTO,最大12桁表示に設定 |
CASIO fx-JP900 | 関数電卓 | CY-243 VerA | 4941.829141(10桁) | 7秒 | |
TI-36X Pro | 関数電卓 | 不明 | 4941.829141(10桁) | 9秒 | |
CASIO fx-5800P | 関数電卓 | INROM-A27,0002 | 4941.829141(10桁) | 14秒 | |
SHARP EL-5160J-X | 関数電卓 | 不明 | 4941.829141(10桁) | 22秒 | |
SHARP EL-509T-AX | 関数電卓 | 不明 | 4941.829141(10桁) | 24秒 | |
Canon F-789SG | 関数電卓 | 不明 | 4941.829141(10桁) | 33秒 | |
CASIO fx-915ES | 関数電卓 | LY718X VerB | 4941.829141(10桁) | 34秒 | |
CASIO fx-375ES | 関数電卓 | LY717X VerA | 4941.829141(10桁) | 34秒 | |
HP 35s | 関数電卓 | 不明 |
4941.8291405
|
40秒 | プログラムによる参考測定。表示モード : ALL |
参考値(wxMaximaによる): 501437.135119937
機種名 | 種別 |
ファームウェア
バージョン |
計算結果(桁数) | 計算時間 | 備考 |
---|---|---|---|---|---|
HP Prime (Home表示) | グラフ電卓(CAS有) | 2.0.0.13865 |
501437.13512
|
1秒未満 | Home表示=CASなしモード |
HP Prime (CAS表示) | グラフ電卓(CAS有) | 2.0.0.13865 | 501437.13512(11桁) | 1秒未満 | Exact:OFF,Complex:OFF |
SwissMicros DM42 (USB給電) | 関数電卓 | DM42 v3.19 | 501437.13512(11桁) | 1秒 | プログラムによる参考測定。表示モード : ALL |
TI-Nspire CX CAS | グラフ電卓(CAS有) | 4.3.0.702 | 501437.13512(11桁) | 1秒 | Calculation Mode:Auto, 最大12桁表示に設定 |
SwissMicros DM42 (電池動作) | 関数電卓 | DM42 v3.19 | 501437.13512(11桁) | 3秒 | プログラムによる参考測定。表示モード : ALL |
CASIO fx-CG50 | グラフ電卓(CAS無) | 03.10.0212 | 501437.1351(10桁) | 6秒 | |
CASIO fx-CG10 | グラフ電卓(CAS無) | 02.02.3211 | 501437.1351(10桁) | 10秒 | fx-CG20同等品 |
CASIO fx-9750GII | グラフ電卓(CAS無) | 02.04.0701 | 501437.1351(10桁) | 12秒 | |
CASIO fx-9860GII | グラフ電卓(CAS無) | 02.09.0201 | 501437.1351(10桁) | 13秒 | |
TI-84 Plus CE | グラフ電卓(CAS無) | 5.2.2.0043 | 501437.1351(10桁) | 25秒 | |
HP 50g | グラフ電卓(CAS有) | 2.15 |
501437.13512
|
31秒 | Approx:ON,Complex:OFF |
TI-89 Titanium | グラフ電卓(CAS有) | 3.10 | 501437.13512(11桁) | 45秒 | Exact/Approx:AUTO,最大12桁表示に設定 |
CASIO fx-JP900 | 関数電卓 | CY-243 VerA | 501437.1351(10桁) | 1分9秒 | |
TI-36X Pro | 関数電卓 | 不明 | 501437.1351(10桁) | 1分31秒 | |
CASIO fx-5800P | 関数電卓 | INROM-A27,0002 | 501437.1351(10桁) | 2分13秒 | |
SHARP EL-5160J-X | 関数電卓 | 不明 | 501437.1351(10桁) | 3分44秒 | |
SHARP EL-509T-AX | 関数電卓 | 不明 | 501437.1351(10桁) | 3分59秒 | |
Canon F-789SG | 関数電卓 | 不明 | 501437.1351(10桁) | 5分24秒 | |
CASIO fx-915ES | 関数電卓 | LY718X VerB | 501437.1351(10桁) | 5分38秒 | |
CASIO fx-375ES | 関数電卓 | LY717X VerA | 501437.1351(10桁) | 5分39秒 | |
HP 35s | 関数電卓 | 不明 |
501437.13512
|
6分32秒 | プログラムによる参考測定。表示モード : ALL |
参考値(wxMaximaによる): 50004626.12212456
機種名 | 種別 |
ファームウェア
バージョン |
計算結果(桁数) | 計算時間 | 備考 |
---|---|---|---|---|---|
HP Prime (Home表示) | グラフ電卓(CAS有) | 2.0.0.13865 |
50004626.12
|
2秒 | Home表示=CASなしモード |
HP Prime (CAS表示) | グラフ電卓(CAS有) | 2.0.0.13865 |
50004626.12
|
4秒 | Exact:OFF,Complex:OFF |
SwissMicros DM42 (USB給電) | 関数電卓 | DM42 v3.19 | 50004626.1221(12桁) | 11秒 | プログラムによる参考測定。表示モード : ALL |
TI-Nspire CX CAS | グラフ電卓(CAS有) | 4.3.0.702 | 50004626.1221(12桁) | 11秒 | Calculation Mode:Auto, 最大12桁表示に設定 |
SwissMicros DM42 (電池動作) | 関数電卓 | DM42 v3.19 | 50004626.1221(12桁) | 28秒 | プログラムによる参考測定。表示モード : ALL |
CASIO fx-CG50 | グラフ電卓(CAS無) | 03.10.0212 | 50004626.12(10桁) | 55秒 | |
CASIO fx-CG10 | グラフ電卓(CAS無) | 02.02.3211 | 50004626.12(10桁) | 1分41秒 | fx-CG20同等品 |
CASIO fx-9750GII | グラフ電卓(CAS無) | 02.04.0701 | 50004626.12(10桁) | 2分0秒 | |
CASIO fx-9860GII | グラフ電卓(CAS無) | 02.09.0201 | 50004626.12(10桁) | 2分11秒 | |
TI-84 Plus CE | グラフ電卓(CAS無) | 5.2.2.0043 | 50004626.12(10桁) | 4分7秒 | |
HP 50g | グラフ電卓(CAS有) | 2.15 |
50004626.12
|
5分14秒 | Approx:ON,Complex:OFF |
TI-89 Titanium | グラフ電卓(CAS有) | 3.10 | 50004626.1221(12桁) | 8分10秒 | Exact/Approx:AUTO,最大12桁表示に設定 |
CASIO fx-JP900 | 関数電卓 | CY-243 VerA | 50004626.12(10桁) | 11分31秒 | |
TI-36X Pro | 関数電卓 | 不明 |
50004626.1
|
15分22秒 | |
CASIO fx-5800P | 関数電卓 | INROM-A27,0002 | 50004626.12(10桁) | 22分6秒 | |
SHARP EL-5160J-X | 関数電卓 | 不明 |
50004626.1
|
37分47秒 | |
SHARP EL-509T-AX | 関数電卓 | 不明 |
50004626.1
|
40分12秒 | |
Canon F-789SG | 関数電卓 | 不明 | 50004626.12(10桁) | 53分51秒 | |
CASIO fx-915ES | 関数電卓 | LY718X VerB | 50004626.12(10桁) | 56分14秒 | |
CASIO fx-375ES | 関数電卓 | LY717X VerA | 50004626.12(10桁) | 56分28秒 | |
HP 35s | 関数電卓 | 不明 |
50004626.12
|
1時間5分38秒 | プログラムによる参考測定。表示モード : ALL |
参考値(wxMaximaによる): 5000096555.034763
機種名 | 種別 |
ファームウェア
バージョン |
計算結果(桁数) | 計算時間 | 備考 |
---|---|---|---|---|---|
HP Prime (CAS表示) | グラフ電卓(CAS有) | 2.0.0.13865 | 5000096555.0 4 (12桁) | 3秒 |
Exact:OFF,Complex:OFF
Exact:OFFなのに[Shift]+[Enter]操作が必要 |
HP Prime (Home表示) | グラフ電卓(CAS有) | 2.0.0.13865 |
5000096555.
|
17秒 | Home表示=CASなしモード |
SwissMicros DM42 (USB給電) | 関数電卓 | DM42 v3.19 | 5000096555.03(12桁) | 1分45秒 | プログラムによる参考測定。表示モード : ALL |
TI-Nspire CX CAS | グラフ電卓(CAS有) | 4.3.0.702 |
5000096555.0
|
1分45秒 | Calculation Mode:Auto, 最大12桁表示に設定 |
SwissMicros DM42 (電池動作) | 関数電卓 | DM42 v3.19 | 5000096555.03(12桁) | 4分42秒 | プログラムによる参考測定。表示モード : ALL |
CASIO fx-CG50 | グラフ電卓(CAS無) | 03.10.0212 | 5000096555(10桁) | 9分4秒 | |
CASIO fx-CG10 | グラフ電卓(CAS無) | 02.02.3211 | 5000096555(10桁) | 16分46秒 | fx-CG20同等品 |
CASIO fx-9750GII | グラフ電卓(CAS無) | 02.04.0701 | 5000096555(10桁) | 20分4秒 | |
CASIO fx-9860GII | グラフ電卓(CAS無) | 02.09.0201 | 5000096555(10桁) | 21分51秒 | |
TI-84 Plus CE | グラフ電卓(CAS無) | 5.2.2.0043 | 5000096555(10桁) | 41分33秒 | |
HP 50g | グラフ電卓(CAS有) | 2.15 |
5000096555.
|
52分38秒 | Approx:ON,Complex:OFF |
TI-89 Titanium | グラフ電卓(CAS有) | 3.10 |
5000096555.0
|
1時間28分29秒 | Exact/Approx:AUTO,最大12桁表示に設定 |
CASIO fx-JP900 | 関数電卓 | CY-243 VerA | 5000096555(10桁) | 1時間55分12秒 | 太陽電池を光から遮断して測定。理由後述。 |
TI-36X Pro | 関数電卓 | 不明 |
50000965
|
2時間37分27秒 | メモリ全消去後測定 |
CASIO fx-5800P | 関数電卓 | INROM-A27,0002 | 1時間を大幅に超えるので測定せず | ||
SHARP EL-5160J-X | 関数電卓 | 不明 | 1時間を大幅に超えるので測定せず | ||
SHARP EL-509T-AX | 関数電卓 | 不明 | 1時間を大幅に超えるので測定せず | ||
Canon F-789SG | 関数電卓 | 不明 | 1時間を大幅に超えるので測定せず | ||
CASIO fx-915ES | 関数電卓 | LY718X VerB | 1時間を大幅に超えるので測定せず | ||
CASIO fx-375ES | 関数電卓 | LY717X VerA | 1時間を大幅に超えるので測定せず | ||
HP 35s | 関数電卓 | 不明 | 1時間を大幅に超えるので測定せず |
2018年7月20日に HP Prime のファームウェアバージョン 2.0.0.13865 (2018 07 06) がリリースされました。
このバージョンからやっと CAS表示で n = 10
5
の結果を出せるようになりました(Exact:OFFのときのみ)。
それ以前のバージョンでは、CAS表示で n = 10
5
の計算をすると電卓が再起動して結果が出せませんでした。
何故か CAS表示で n = 10
5
の計算をすると、HOME表示よりも高速に計算できました。
n の数値が大きいので、CAS(数式処理システム)が計算を高速化するための何らかの工夫をしたのかもしれません。
しかし、CAS表示の Exact 設定(日本語表示の「正確」)に関するバグは未だに直っていません。
Exact 設定は以下のような機能です。
Exact:ON |
CAS表示で数学定数や超越関数を数値にしないようにします(CAS表示のデフォルト)。
ただし、[Shift] + [Enter] 操作をすると結果を数値で出せます。 |
Exact:OFF | CAS表示でも結果を数値で求めます。[Enter] を押すだけで数値で結果が出ます。 |
以前、測定に使ったファームウェア "2016 08 29 (10637)" は n = 10 5 の計算が不可能でした。
CAS表示 Exact:ON | CAS表示 Exact:OFF | |
---|---|---|
n = 10 2 | 計算可 | 計算可 |
n = 10 3 | 再起動 | 計算可 |
n = 10 4 | 再起動 | 計算可 |
n = 10 5 | 再起動 | 再起動 |
下の表は、今回の測定に使った "2.0.0.13865 (2018 07 06)" です。2018年7月20日にリリースされました。
前述のように n = 10
5
の計算が一応できます。
CAS表示 Exact:ON | CAS表示 Exact:OFF | 備考 | |
---|---|---|---|
n = 10 2 | 計算可 | 計算可 | |
n = 10 3 | 再起動 | 計算可 | |
n = 10 4 | 再起動 | 計算可 | |
n = 10 5 | 再起動 | 計算可(注) | (注)Exact:OFF なのに [Shift]+[Enter] 操作が必要 |
もっと新しいファームウェアも見ましょう。
2018年11月1日にリリースされた "2.1.14181 (2018 10 16)" です。
少し改善しましたが、Exact:ON のときに再起動するバグが未だに直っていません。
CAS表示 Exact:ON | CAS表示 Exact:OFF | 備考 | |
---|---|---|---|
n = 10 2 | 計算可 | 計算可 | |
n = 10 3 | 再起動 | 計算可 | |
n = 10 4 | 再起動 | 計算可 | |
n = 10 5 | 計算可 | 計算可(注) | (注)Exact:OFF なのに [Shift]+[Enter] 操作が必要 |
同じファームウェアの Windows や Mac のエミュレーターだと Exact 設定に関するバグは少なくなっています。
CAS表示 Exact:ON | CAS表示 Exact:OFF | 備考 | |
---|---|---|---|
n = 10 2 | 計算可 | 計算可 | |
n = 10 3 | 計算可 | 計算可 | |
n = 10 4 | 計算可 | 計算可 | |
n = 10 5 | 計算可 | 計算可(注) | (注)Exact:OFF なのに [Shift]+[Enter] 操作が必要 |
何故、エミュレーターの方が安定して動作するのかは不明ですが、エミュレーターの方がメモリが多いので、メモリー不足が発生しにくいという可能性はあります。
エミュレーターのリンク先は
HP Prime の記事
の「概要」に記載されています。
n=10 5 のとき、下位機種の fx-9750GII の方が約9%程度高速です。 これは両機種のCPU性能がおそらく同一であり、fx-9860GII の方がファームウェアの構造が複雑なためと思われます(CPUはSH-4Aではないかと言われている)。 fx-9750GII はライン表示入力という古い入力方式を採用しており、ファームウェア構造は fx-9860GII より簡単です。 一方で fx-9860GII は教科書表示入力が可能である上にさらに機能も多くなっており、ファームウェアの構造は明らかに複雑でしょう。
n=10 4 のとき、fx-375ES と fx-915ES の間に0.4%ほどのわずかな計算時間の差があります。 fx-375ES と fx-915ES は同じハードウェアと思われます(ROM容量の差はあるかもしれない)。 これらの電卓はファームウェアの違いで機能差を出しています。
通常の関数電卓のCPUクロックはCR発振を使っているものが多いので、この程度の誤差はあっても当然と思われます。
n = 10
5
のときの CASIO fx-JP900 の計算時間を測定していると、計算時間にばらつきがあることに気が付きました。
私は7回測定したのですが、1時間55分12秒〜1時間55分53秒と最大41秒の差がありました。
と言っても 0.6% 程度の差なのであまり気にする必要もないのかもしれませんが、どうやら太陽電池に光を照射しているかどうかで速度が変わるようです。
太陽電池を光から遮断すると1時間55分12秒になりました。
太陽電池にデスクライトの光を照射すると1時間55分53秒になりました。
この時間差は電池電圧と太陽電池電圧の差によって生じているような気がします。 ちなみに私が測定したときの fx-JP900 の電池電圧(LR44)は 1.477V(無負荷時)でした(店頭購入時の電圧は不明)。 fx-JP900 の太陽電池の電圧は不明ですが、測定時は LR44 よりも低かったのでしょう(強い光を照射すれば、太陽電池の電圧が LR44 の電圧を超える可能性もある)。
かと言って測定前に全機種の電池電圧と太陽電池パネルに照射する光の強さを揃えるのも難しく、本測定はあくまでも参考と言うことになります。しかし、大きな誤差は出ないと思います。