既に fx-CG100 が発売、fx-CG50 は生産終了となっておりますが、珍しい事に、fx-CG50 のアプデが登場しておりました。
ref. fx-CG50 アプデ
https://support.casio.jp/download.php?cid=004&pid=2126
- バージョン履歴
(2025年10月29日)  fx-CG50 OSアップデーター(⇒Version 3.81)及び関連アプリソフトの公開 (Windows/Mac OS)
- バージョンアップ内容
  (Ver3.80.XX1X → Ver3.81)
    軽微な修正
との事で、内部的な不具合の修正、という具合のようです。
これで casioplot.getkey() とかが追加になれば興味深いのですが、マニュアルの更新はなさそうですから、機能面は変更なし、として差し支えなさそう。
他方で、OS に lock を掛ける、というイヤな更新もあるかも知れません。
確か、XCAS は、OS 3.7 では問題なしだったものの、3.8 になって、導入が困難になったそうで、3.7 へ roll back する必要があると記されておりました。
今般の 3.81 は、OS の downgrade を阻止する、そんなイヤなメカが入っていたりしないか、などと思う所。
(当方、未だに 3.40 だったりします)
 
で、XCAS, PythonExtra を使っていない皆さん、おそらく最後のアプデが提供されましたので、是非ともご利用戴きたく ... !
突然のアプデ襲来に驚いてしまい、出だしはこんな事で始めましたが、先日から、チョット手遊びで、こんなコードを作っておりました。
四角形の中に少し傾けた線を引き、それを繰り返していくと、規則性のある図柄が現れる、というものです。
# recsq.py 2025-10-27但し、やす親分作成の線引き module 「u.py」を使用しております。折角作っていただいたので、有り難く使わせて戴いております。
from math import *
#from casioplot import *
from u import *
a=(86,191)
b=(86,0)
c=(277,0)
d=(277,191)
def sqlin(a,b,c,d):
line(int(a[0]),int(a[1]),int(b[0]),int(b[1]))
line(int(b[0]),int(b[1]),int(c[0]),int(c[1]))
line(int(c[0]),int(c[1]),int(d[0]),int(d[1]))
line(int(d[0]),int(d[1]),int(a[0]),int(a[1]))
def tr(r,p,q):
return (p[0]*(1-r)+q[0]*r,p[1]*(1-r)+q[1]*r)
def recsq(n,r,a,b,c,d):
for i in range(n):
sqlin(a,b,c,d)
b=tr(r,b,c)
c=tr(r,c,d)
d=tr(r,d,a)
a=tr(r,a,b)
recsq(60,0.05,a,b,c,d)
親分、多謝であります !
ref. Casio Python - グラフィックス出力関数の追加 - e-Gadget - プログラム関数電卓
https://egadget.blog.fc2.com/blog-entry-739.html
このコード、元々は再起処理っぽい感じで書いておりました。
def recsq(n,r,a,b,c,d):しかし、繰り返しの回数が 50 になると stack overflow になってしまいました。なんだよ、オイ !
if n<=0:
return
sqlin(a,b,c,d)
b=tr(r,b,c)
c=tr(r,c,d)
d=tr(r,d,a)
a=tr(r,a,b)
recsq(n-1,r,a,b,c,d)
upython では、バルクデータを扱う必要もあって、heap oriented らしく、Stack は少し控えめに配分するのだと思う所です。
で、作業中のコード、入力している最中、「無理に recursive にする必要はなさそうだナ」と、単純な繰り返しにした所、stack 消費がないため 50 を越えて 100 でも問題なく動くと判明しました。
先日来、ダイソーで買ってきた NiMH 電池を使っていたのですが、今日になって、Low Batt replace が出る様になったものの、一度電源をサスペンドすると、一時的に復帰する事をいい事に、使い続けておりました。
流石にこのままではキツそうと、電池交換のため、編集中のコードを保存しておこうとすると、Low Batt 警告が出るのであります。Flash memory は書き込みに電力が要るのです。そこで、一旦サスペンドで電圧回復を図り、保存しなおすという際どい操作で、切り抜けたという具合。(良い子はマネしちゃダメよ)
昔のポケコンでは、RAM に BASIC プログラムを置いておりました。電池が切れると、内容をすっかり忘れてしまうのですが、それを思うと、隔世の感、ではあります。
 
0 件のコメント:
コメントを投稿