Casio Pyhton - 目次

Python Casio Python
 Casioグラフ関数電卓の Python を使ってみる
     
- 目 次


初版:2020/06/13
更新:2021/03/23

目 次

リファレンス


連載記事

Python を基礎から勉強するためではなく、高級言語や Casio Basic でのプログラミング経験がある人 (管理人もその部類) がとりあえずスクリプトを書いて (C# や java の経験があるととりあえず書けてしまうのが Python の良いところです)、正しく動くものを作ってみる目的で記事を書いています。これは理解のためのポイントだと管理人が思う項目は、逐次解説を入れています。

カシオ電卓のPythonモード(Casio Python) はPCなどで使える普通の Python とは異なり、ベースとなる micro Python やカシオ独自の仕様が反映されているので、実際にスクリプトを書いて動作させながら、仕様を調べるのが、本連載のもう一つの目的です。

Python を基本から学びたい方は、ネットに良いものがありますので (例えば Python入門 など)、そちらで学習されることをお勧めします。


0. Casio Python のポテンシャル

1. はじめに: 電卓で作る初めてのスクリプト
  1.1 Casio Python での初めてのスクリプト
   1.1.1 fx-CG50 の準備
   1.1.2 Casio Python の起動
   1.1.3 スクリプトファイルの作成
   1.1.4 スクリプトの作成
   1.1.5 スクリプトの実行
  1.2 シェル画面
  1.3 スクリプト作成と編集の2つの方法

2. Casio Python とは?:MicroPython と CPython
  2.1 Casio Python の素性
   2.1.1 MicroPython 1.9.4
   2.1.2 CPython 3.5.4
  2.2 Casio Python に組み込まれているオプジェクト名の一覧
  2.3 Casio Python の学習方法

3. Casio Python の入出力:プログラムのデザイン
  3.1 入力 - input()
  3.2 出力 - print() とグラフィックス出力関数
  3.3 Casio Pyhton で作るプログラム

4. Casio Python への移植:モンテカルロ法(1)
  4.1 コメントの書き方
  4.2 モジュールの呼び出し - import
  4.3 メニュー機能の作成
  4.4 circle() 関数の作成
  4.5 グラフィックス出力
   4.5.1 自作関数 circle() で円を描画
   4.5.2 draw_string() 関数で文字列を出力
   4.5.3 while 文により繰り返し
   4.5.4 random() 関数により正方形内の座標(x, y)を取得
   4.5.5 set_pixel() 関数で (x, y) に点を描画
   4.5.6 点の座標から円周率を計算
   4.5.7 draw_string() 関数で回数と円周率を表示
   4.5.8 draw_string() 関数でシミュレーション終了の表示

5. 関数の作成と活用:grp_color() 関数の作成
  5.1 関数の引数について
  5.2 関数内の変数の有効範囲 - 変数のスコープ
  5.3 circle() 関数の拡張
  5.4 色指定関数を追加
   5.4.1 RGBによる色指定
   5.4.2 タプル型
   5.4.3 色指定方法の拡張
   5.4.4 グラフィック画面での色指定関数 grp_color() 関数の作成
  5.5 circle() 関数拡張の書き換え
  5.6 モンテカルロ法(2) - monteca2.py

6. グラフィックス出力関数の追加:line() とユーザーモジュールの作成
  6.1 line() 関数の作成
  6.2 グラフィックスユーザーモジュールの作成
  6.3 line() 関数の動作確認 - ckLine.py
  6.4 line() 関数の動作確認 - ckLine2.py

7. テキスト出力関数の追加:locate() をユーザーモジュールに追加
  7.1 locate() 関数の作成
   7.1.1 フォントピッチ dx, dy の設定
   7.1.2 column から x を、row から y を算出
   7.1.3 フォントサイズ指定の処理
   7.1.4 locate() の完成 
  7.2 locate() をユーザーモジュールに追加
  7.3 locate() の動作確認 - ckLocate.py
  7.4 モンカルロ法(2) - monteca3.py

8. シェル画面入力の工夫:高速素因数分解(1)
  8.1 高速素因数分解プログラム - FactorG のざっくりした分析
  8.2 入力と入力値のチェック
  8.3 変数の初期化
  8.4 素数が素因数かどうかをチェック
  8.5 "エラストテレスの篩い" で素因数の探索
  8.6 ckpwr() 関数の作成
  8.7 disp() 関数の作成 

9. Python らしい反復処理:高速素因数分解(2)
  9.1 frac() 関数をユーザーモジュール (u.py) に追加
  9.2 不要な処理を削除
  9.3 disp() 関数のスリム化
  9.4 素数が素因数かどうかをチェックする部分のスリム化
  9.5 素因数を探索する残りの部分のスリム化
  9.6 スリム化したスクリプト - FactorG2.py

10. 大きな数の計算:高速素因数分解(3)
  10.1 変更箇所の洗い出し
  10.2 増加する素因数に合わせて表示桁数を拡張する - disp() の変更
  10.3 入力桁数の制限を拡張し、それに合わせてエラー表示を変更する
  10.4 素因数探索回数の表示を追加する
  10.5 素因数が10桁を超えるときの表示の変更 - disp() の変更

11. 関数呼出オーバーヘッド:高速素因数分解(4)
  11.1 関数呼出あり (ver 3) となし (ver 4) の実行速度の違い
  11.2 Casio Python の関数呼出オーバーヘッド

12. 要素数の多いリスト:高速素因数分解(5)
  12.1 増分リストを拡張する
  12.2 要素数480個の探索数増分リスト
  12.3 探索数を拡大して15桁対応高速素因数分解のスクリプト
  12.4 探索数拡大による高速化
  12.5 増分リストをさらに拡張する

13. 10進数除算の出力と精度:高速素因数分解(7)
  13.1 Casio Python での除算結果のデータ型
  13.2 Casio Python での関数計算結果のデータ型
  13.3 Casio Python での除算計算の精度
  13.4 0 および負の整数入力の処理
  13.5 入力ルーチンの修正
   13.5.1 入力委が小数点以下 0 の小数の場合に処理を追加 
   13.5.2 入力値が負の数値の場合の処理
   13.5.3 入力が 0 の時の処理
  13.6 完成した FactorG7.py の動作確認

14. CGモデルとFXモデルのPythonモードの違い
  14.1 CGモデルからFXモデルへのスクリプトの移植
   14.1.1 CGモデルからFXモデルへのスクリプト移植のポイント
   14.1.2 CGモデルとFXモデルの判定方法
  14.2 FXモデルのPythonモードの制限 - バッファサイズ
   14.2.1 編集できるスクリプトファイルの行数制限
   14.2.2 print() 出力のスタック・バッファサイズ
   14.2.3 Shell 画面出力のスタック・バッファサイズ
  14.3 Casio Python自体の機能の違い
   14.3.1 CGモデル OS3.40 と OS3.50 の違い
   14.3.2 CGモデル OS3.50 と FXモデル OS3.40 の違い

15. RGB値による色設定
  15.1 RGB値の色を確認するプログラム
  15.2 fx-CG50 の高精細カラー液晶 - 実は 16bit カラー
  15.3 モノクロ液晶モデルでのRGB値による色設定
  15.4 RGB値でのピクセル色設定と読取りの実験 - CGモデルとFXモデル

16. circle() 関数のFXモデルへの拡張
  16.1 CGモデルとFXモデルの場合分け
  16.2 circle() 関数を使ってみる


17. shell 画面とグラフィック画面の活用:コラッツ問題
  17.1 コラッツ問題 (Collatz Problem) とは?
  17.2 コラッツ数列の計算
  17.3 出力の工夫ポイント
   17.3.1 input() での入力
   17.3.2 フォントサイズを変えて添え字の描画
   17.3.3 リアルタイムに変わる数値の表示
   17.3.4 グラフの描画
   17.3.5 数列の最大値を求めて表示
   17.3.6 shell 画面でのスクロール出力
  17.4 コラッツ問題で遊んでみる



リファレンス

Casio Python - オプジェクト一覧 (← をクリック)
Casio Python に実装されているものを網羅しています。
  • オブジェクト一覧には、個別に作成したリファレンスへのリンクがあります。
  • 個別のリファレンスには、Python 公式サイトでの解説へのリンクを掲載しています。
  • 個別のリファレンスには、Casio Python 独自の項目を優先して記述します。
  • 一旦作成したものは、随時追記。修正します。

e-Gadgetで作成したユーザーモジュール - オブジェクト一覧 (↓下記)
e-Gadget で作成したユーザーモジュールに含まれているもの

最新バージョン: ver 1.5 <ダウンロード>
サポートモデル / OS:
  ・CGモデル - fx-CG50 / OS3.40以降
  ・FXモデル - fx-9750GIII
/ OS3.40以降
  ・FXモデル - fx-9860GIII
/ OS3.40以降

ファイル名: u.py / ufx.py
  全サポートモデルに対応 - CGモデル/FXモデルの自動判定機能あり
  ・ufx.py は FXモデルで開くために、u.py から一部コメントを削除して150行以下にしたもの
実装オブジェクト
  isCG(): CGモデルかFXモデルかを判定
  grp_color(): グラフィック描画関数の様々な色設定をタプル型に変換
  circle(): グラフィックス画面に円を描画
  line(): グラフィック画面に線分を描画
  locate(): グラフィック画面にテキストを出力
  ・frac(): 浮動小数点型数値の小数部を取得




応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-CG50Pythonfx-9750GIIIfx-9860GIIIプログラム関数電卓

リンク集 | ブログ内マップ
関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

コメントの投稿

非公開コメント

re.re.re:c.basicからpython shellの呼び出すときは

re.re.re:c.basicからpython shellの呼び出すときは
管理人様、sentarou様、有志の方々様へ
iiron2です。

c.basicのプログラムもpythonもフォルダーのルートから見えるところに
おいておくと、あとは管理人様の疑問のようになぜc.basicのコマンドでは
ないpython shellが呼べるのかというところになりますが
構成としましては、msdosのバッチプログラムのように元からある機能を
c.basicのプログラムにはさんでよびだしてるだけなのです。
ルートフォルダーからは、ユーザーが普通にshellだけで呼び出せて
いますよね。

私の貧弱な説明で申し訳ありませんが、うまくいくとうれしいです。


以上

Re: re.re:c.basicからpython sellをよびだしたときは

iron2 様

管理人のやすです。

Python シェルを呼び出すために使っておられる SHELL コマンドですが、ここが私には謎です。
C.Basic には、Shell コマンド無かったように思うのですが、SysCall をお使いなのでしょうか?

ご教示頂けますか?

処理時間の測定方法について

iron2様

管理人のやすです。


> 管理人様はfx-vg50のpython シダの葉実行時間どやってはかったのか
> わたしにはわかりませんが、このぐらいの受講時間ならばストップウォッチ
> で測っても比較できそうですね

本ブログでは、Casio Basic 各コマンドの処理速度や、Casio Basic や Python のプログラム動作速度を比較測定しています。
これには、一貫して以下の方法を採用しています。

1. 測定用のソフト
Windowsデスクトップで動作する "SGウォッチ" を使っています。
https://www.vector.co.jp/soft/win95/personal/se383387.html

2. 測定方法
1) 自分なりの反射神経を利用し、できるだけ再現性が得られるように、何回か練習する
  私の場合は、0.1秒までの再現性は得られると思っています。
2) 5回測定し、
3) 最大と最小を捨てる
4) 残る3回の平均値を算出する

同じソフトを使い、個の方法を愚直に守っています。

絶対値の測定ができないので、私個人に依存する相対的なものです。但し再現性は 0.1 秒レベルで得られていると思っています。

0.1秒レベルでの比較を行うことは、無理です。
0.1秒レベルでの比較を行うには、2つのプログラム電卓を並べて同時に処理させて、結果表示までの比較を行って、2つの電卓でどちらが速いかの判定を行います。場合によっては動画として記録に残して証拠にします。

測定方法の一貫性を確保することを最優先としているわけです。


ご参考になれば幸いです。

hp prime g2に管理人様のシダの葉移植できました。

hp prime g2に管理人様のシダの葉移植できました。
管理人様、sentarou様、有志の皆々様へ
hp primeのticksがmsecをかえすにで
約30000msecです。
すなわち約30秒ですね。
カシオとHPの最大の差は、HPは標準でticks備えてるてことだと思います。
またdateを操作できるのでカレンダーも時計もつくれてしまします。
大学や企業の研究施設でしかつかわない高度な数学関数があらかじめ
用意されているところがわくわくします。

管理人様はfx-vg50のpython シダの葉実行時間どやってはかったのか
わたしにはわかりませんが、このぐらいの受講時間ならばストップウォッチ
で測っても比較できそうですね

fx-cg50のpython描画はやいですね。

以上

re.re:c.basicからpython sellをよびだしたときは

re re; c.basicからpython shellをよびだしたときは
iron2です。
管理人様、sentarou様、有志の皆々様へ
0- >Ticks%
S->S
SHELL from BENTI1 import *
Ticks%/32768->S
Locate 1,2,S
です。

説明が不十分で年始から申し訳ありません。
私もまだはっきりしたことはわからないのですが、pythonは
環境設定が大事かも、絶対パスとか相対パスとかが
ちゃんと他のアプリケーションともどもとおっているか
がカギの気がします。

いつも、おさわがせします。以上。

Re: c.basicからpython shellをよびだしたときは

iron2様

管理人のやすです。

ありがとうございます。

> とりあえず、c.basic for cgのプログラムはメインメモリにおいてます。
> 正確にいうと、メインメモリ内のプログラムフォルダにあります。

> 0->Ticks%
> 0->S
> SHELL
> Ticks%/32768->S
> Locate 1,2,S
> です。

C.BasicプログラムをメインメモリのPROGRAMフォルダに置いて、実行してみましたが、シェルが起動しません。
SHELL をコメントアウトすると Locate 1,2,S で表示される数値は少なくなりますが、シェルが起動しているかどうかがよく分かりません。

ちなみに、benti1.py として、

X=999999999999999/2
print(X)
C=1/3
print(C)
D=pi
print(D)
X=0
for I in range(0,1000):
 X=X+I+1
print(X)

を作り、ストレージメモリのルートに置きました。
そして、メインメモリにある C.Basicプログラムを起動して、Pythonスクリプトを走らせるには、どのようになさっているのでしょうか?


0->Ticks%
0->S
python shell from benti1
Ticks%/32768->S
Locate 1,2,S

としても、benti1.py が起動しません。

実際にはどのようなプログラムを記述されているのでしょうか?

c.basicからpython shellをよびだしたときは

iron2です。
管理人様、sentaou様、有志の皆々様へ
とりあえず、c.basic for cgのプログラムはメインメモリにおいてます。
正確にいうと、メインメモリ内のプログラムフォルダにあります。
python shell 呼び出しプログラムはbenti1
0->Ticks%
0->S
SHELL
Ticks%/32768->S
Locate 1,2,S
です。
しぇllの呼び出しだけですと
0.0006713871秒ほどです。
0.671msecです。


以上

Re: hp prime g2のpythonでフラクタルかけました。

iron2様

管理人のやすです。

C.Basic for G と Python の連携ですが、面白そうなので私もやってみようと思ったのですが、iron2様が実際になさったことが、うまく再現できません。

まず、Python shell の呼出ですが、
> C.Basic for CGで
> 0->Ticks%
> shell
>Ticks%/32768

としましたが、Python shell が呼び出せません。

C.Basic のプログラムファイルをストレージメモリのルートに置いたり、C.Basicのプログラムファイルを Pythonスクリプトのあるフォルダに置いたりしてみましたが、うまくシェルを呼び出せません。

どうなさったのでしょうか?
ご教示ください。


hp prime g2のpythonでフラクタルかけました。

hp prime g2のpythonでフラクタルCGかけました。
iron2です。
管理人様、sentarou様、有志の皆々様へ
まず、シダの葉はfx-cg50のpythonで管理人様のコードで描けましたが
c.basic for cgのTicks%
shell コード import *
Ticks%/32768
で時間を測ろうとしましたが、コードのimportのところでこけてしまい
時間は測定できませんでした。
同じ条件のc.basic for cgより高速であったのは管理人様と同様です。

本題のフラクタル描画ですが、net上であがってるnumwaksやhp primeの
比較用のコードを用いました。
hp prime g2の全画面に描写してしまうため、msgbox関数にかかった時間
を表示しました。
測定時間に波はありますが最後に測ったタイムは49.995秒でした。
ほぼ青のバックに黄色のフラクタルが描かれているものです。

fx-cg50のpythonでもためしてみたいので、がんばります。
コードはnet上にあったのですがエラーだらけで自力で修正しました。
昔、c.basic for cgのftune版のsyscall版を作ったときかなり早かった気が
します。

測るということは、具体的な比較ができるので私は大切なことと
思っています。

以上

実行時間測定できました。

プログラムの実行時間測定できました。
0->Ticks%
shell from プログラム名 import *
Ticks%/32768
ひとつハードルをこえたので
なんかうれしいです。
shell起動が0.6msecほど
X=999999999999999/2
print(X)
C=1/3
print(C)
D=pi
print(D)
X=0
for I in range(0,1000):
X=X+I+1
print(X)
この4つの処理の合計が
0.793457msec
ですのでプログラム地震の時間は
0.293457m秒です。
まじで爆速でした。

以上

カシオパイソンにはtimeモジュールがない

カシオパイソンにはtimeモジュールがない
iron2です。
管理人様、sentarou様、有志の皆々様へ
タイトル通りの問題で実行時間測定にいきずまって
前投稿となったわけです。
普通ならばimprot time
ts=time.time()
処理内容
te=time.time()
で済むはずだったんですが、これができず
くるしんでいます。

c.basic for cgで
o->Ticks%
sell
_Ticks%/32768
にてパイソンシェルの呼び出し時間は測れました。
6msecほどです。
しかし、シェルからパイソンスプ陸とを実行しようとしましたが
うまくいきませんでした。

以上


カシオパイソンで時間計測どうすれば良いでしょうか

管理人様、sentarou様、有志の皆々様へ
iron2です。
カシオパイソンでプログラムの実行時間の測定方法がわかりません。
プログ内をうろうろと、探索していましたが見つけれませんでした。
ほしい情報をさがしだすのが、今はなかなか困難です。
管理人様のカシオパイソンの記事の最初の部分を読んで
A=0
A=999999999999999/2
print(A)
B=0
B=1/3
print(B)
C=0
C=math.pi
print(C)
X=0
for I in range(0,1000):
X=X+I+1
print(X)
の実行はできました。
この実行時間を測りたいだけなのです。

管理人様のシダの葉のコードみつけました。
後で真似させていただきます。


以上

Re: 今さらながらの1-1000の加算 ベンチ

iron2様

管理人のやすです。


> ppl*32 cpu212.17mhz,sfc1/4 106.08mhz,bfc1/4 106.08mhz,pfc1/16 26.52
> のc.basic for cgで1-1000の加算で答えは500500が正解です。
> forループでの計測です。
> 11.913msecです。
> hp prime g2の同じ処理が15msec
> でp理目g2より高速です。
> ただし、prime g2のΣコマンドでは6msec
> sumコマンドでは3msecで更に高速なのですが
> なるべく組み込み関数を使ったほうが、
> へたにプログラムするより手間もかからず
> 正確に早くできるってことでしょうかね。

オーバークロックしたfx-cg50のc.basic for cgの
Σコマンド版がぬけていたので
追記します。
5.889msecでごくわずかですがこちらもhp prime g2より
高速です。


Ptuneの威力ですね!


> あと、fx-cg50のディフォルトのクロックが
> あまり早くないのは、消費電力を極力抑えることが
> 電卓の使命だからではないでしょうか。

それは、確かにありそうですね!


> c.basicのTicksの入力のしっかたをなんとか
> メニューから選び出す事ができて実行時間測定
> プログラムを作りました。

お疲れ様です。


リハビリに電卓でプログラミングというのは、なかなか凄いことだと思っております。

私もリハビリが必要になったら、iron2様にならってプログラミングしようと思います。

今更ながらの1-1000加算ベンチ追記

管理人様、sentarou様、有志の皆々様へ
iron2です。
オーバークロックしたfx-cg50のc.basic for cgの
Σコマンド版がぬけていたので
追記します。
5.889msecでごくわずかですがこちらもhp prime g2より
高速です。

おそるべしc.basic for cg+ftuneですね。
このていどの計算では消費電力気にならないですが
シダの葉cgなどでは激しく電池を消耗します。

うれしいような、はがゆいような心持ちです。

以上

今さらながらの1-1000の加算 ベンチ

0-バークロックしたfx-cg50のc.basicは早いですね
管理人様、sentarou様、有志の皆々様へ
iron2です。
ppl*32 cpu212.17mhz,sfc1/4 106.08mhz,bfc1/4 106.08mhz,pfc1/16 26.52
のc.basic for cgで1-1000の加算で答えは500500が正解です。
forループでの計測です。
0->Ticks%
0->A
1000->N
for 0->I To N Step 1
A+I->A
Next
Ticks%/32768->E
Locate 5,1,A
Locate 1,2,E
は11.913msecです。
hp prime g2の同じ処理が15msec
でp理目g2より高速です。
ただし、prime g2のΣコマンドでは6msec
sumコマンドでは3msecで更に高速なのですが
なるべく組み込み関数を使ったほうが、
へたにプログラムするより手間もかからず
正確に早くできるってことでしょうかね。
あと、fx-cg50のディフォルトのクロックが
あまり早くないのは、消費電力を極力抑えることが
電卓の使命だからではないでしょうか。

c.basicのTicksの入力のしっかたをなんとか
メニューから選び出す事ができて実行時間測定
プログラムを作りました。

まだこんなことしかできませんが、リハビリというより
たのしんでます。

以上



Re: hp prime とhp prime g2のpythonのプログラムが起動しません

iron2様

管理人のやすです。

> akatuki様のpython版のシダの葉のプログラムを
> hp primeとhp prime g2で走らせようとしました。
> エラーはないのですがプログラムが起動せず
> お手上げ状態です。

akatsuki様のプログラムは、Python でなくjava だと思いますので、そのまま書き写しただけだ
と、python としては動作しないはずです。

当ブログのcasio pythonスクリプトをご参考になってください。


> やはり脳梗塞の後遺症で頭が回らないようです。
> ほぼ左脳全部壊疽しているため生きているだけで
> ありがたい話なのですがいろいろ後遺症が
> ありうまくいかないことが多くきついです。

それでプログラミングとは、凄すぎます。数学の復習なども良いかもしれませんね?


> とりあえずカシオパイソンでチャレンジしてみます。
何なりとおたづねください。

hp prime とhp prime g2のpythonのプログラムが起動しません

iron2です。
管理人様、sentarou様、有志の方々様
akatuki様のpython版のシダの葉のプログラムを
hp primeとhp prime g2で走らせようとしました。
エラーはないのですがプログラムが起動せず
お手上げ状態です。
akatuki様のプログにそのむねを投稿しようと
したのですがうまくできませんでした。

やはり脳梗塞の後遺症で頭が回らないようです。
ほぼ左脳全部壊疽しているため生きているだけで
ありがたい話なのですがいろいろ後遺症が
ありうまくいかないことが多くきついです。

とりあえずカシオパイソンでチャレンジしてみます。

以上

Re: No title

iron2様

管理人のやすです。

> 以前つくったカラーバージョンのシダCGのhp prime とhp prime G2との
> 描画時間の比較を行ったので報告します。

私自身、HP Prime シリーズを持っていないので、実際に遊んでみることが出来ないのですが、これまでの皆様のコメントを拝見する限り Prime は爆速モデルと認識しています。


> クロックアップしたイント版のfx-cg50のシダCGは5秒ほどで非常に
> 高速ですが、実数版ではまだhp prime G2には勝てないです。

sentaro様は、お忙しいようで最近書き込みが無いのですが、コンパイル版 C:Basic が登場すれば、Prime をぶっちぎりで抜き去るはずです。楽しみです!!


> hp primeにもマイクロパイソン使えるといいですが、farmweaのアップデート
> まだしてませんのでちょとたのしみです。
> カシオパイソンのように描画モジュール提供してくれないかも
> ですが。

Casio Python も今のままでは、かなり物足りないのですが、フランス専用版では色々な検討が進んでいるようなので、今後が楽しみです。


> カシオもhpもグラフ電卓が昔のパソコン以上の性能だなと感じます。
> しかも電力が少なくてすんでいるのが素晴らしいと思う。

30年ほど前のパソコンは、今思えば恐ろしく遅かったですよね!

No title

管理人様、sentarou様、有志の皆々様
iron2です。
まだプログラムをゼロから起こすほどは回復してないので
以前つくったカラーバージョンのシダCGのhp prime とhp prime G2との
描画時間の比較を行ったので報告します。
ちなみにhp primeシリーズは実数計算しかできないので、c.basicの
ようにint版をつくって更なる高速化はできません。
したがって実数版で比較しました。
hp primeは26.93秒、hp prime G2は8.697秒でほんとうに3倍速いです。
hp prime接続キットでパソコンに2台接続していると、プログラムを
コピーできるので、に移植するのにたすかりました。
いまだこんなことしかできませんが頭の体操してる気分です。
クロックアップしたイント版のfx-cg50のシダCGは5秒ほどで非常に
高速ですが、実数版ではまだhp prime G2には勝てないです。
hp primeにもマイクロパイソン使えるといいですが、farmweaのアップデート
まだしてませんのでちょとたのしみです。
カシオパイソンのように描画モジュール提供してくれないかも
ですが。

カシオもhpもグラフ電卓が昔のパソコン以上の性能だなと感じます。
しかも電力が少なくてすんでいるのが素晴らしいと思う。
以上

Re: deimal型がカシオパイソンに無いです

iron2様

管理人のやすです。

そうなんです、Casio Python には decimal型が無いのです。

そして、Cpythonでは、53桁まで精度があるようですよ。

deimal型がカシオパイソンに無いです

カシオパイソンにdeimal型が無いです
iron2です。
管理人様、sentarou様、有志の皆々様
カシオパイソンにdeimal型が無いので固定小数点演算が
できず、微妙に誤差が蓄積され、本家のパイソン3と比べると
演算精度が低い気がします。
文字列を引数にとるので、0.1は0.1ですが、float型ですと
0.1000004のような不正確な数値計算しかできません。
deimalモジュールが使用できないままなのですが
メーカー側は問題視していないのでしょうか。
後、パイソン3では、32桁精度で計算できてた気がしますが
思い違いでしょうか?

それでは、失礼いたします。
最新記事
検索フォーム
最新コメント
カテゴリ
C# (3)
Visitors
Online Counter
現在の閲覧者数:
プロフィール

やす (Krtyski)

Author:やす (Krtyski)
since Oct 30, 2013


プログラム電卓は、プログラムを作って、使ってナンボ!

プログラム電卓を実際に使って気づいたこと、自作プログラム、電卓での Casio Basic や Casio Python プログラミングについて書いています。

なお管理人はカシオ計算機の関係者ではなく、Casio Basicが面白いと感じる1ユーザーです。


写真: 「4駆で泥んこ遊び@オックスフォード郊外」

リンク
月別アーカイブ
Sitemap

全ての記事を表示する

ブロとも申請フォーム

この人とブロともになる

QRコード
QR