2018年3月17日土曜日

円周率の近似値を求める手法

藤堂様からお知らせ戴きました、つぎのblog様に、とても興味深い情報がありました。

cf. 円周率の近似値となる分数を算出するワンライナー - すぎゃーんメモ 様
http://memo.sugyan.com/entry/20090708/1247044465

Perl言語によるone liner (1行スクリプト)で、円周率に近い分数を検索する、というものです。
ただ、当方はPerlとか正規表現とか、ちんぷんかんぷんなのですヨ。
そこで、上記blog様にある1行スクリプトを凝視するコト数時間、やっている事がおぼろげに判ってきました。
  1. 分母を1から始めて、10000などの上限に達するまで、ループで調べる
  2. 円周率に近い分数であるから、その分子は分母の円周率倍の整数であれば良かろう
  3. こうして分数をでっち上げ、正規表現による精度の確認
という感じらしい。そうか、その手があったのか !

内容としては簡単なものなのですが、それをPerlスクリプトでサラリと書いてしまう辺り、大変勉強になります。
ここでは、同等の機能をBASIC ! (AndroidのRFO BASIC)で行ってみました。電卓で実行するにしても、BASICならば書き換えやすいと思います。

件のone linerでは、円周率近似値を出力する目的を簡単に済ませるものなので、約分まではやりません。必要ならば、別のone linerにパイプするなど、ユーザーが行えば宜しい、という具合。
そこで、BASIC ! プログラムでは、互除法を用いて約分する機能も盛り付けてみました。正確には、約分出来そうな場合には、出力しない様になっております。

プログラム中の変数 d は、円周率と判断する誤差の範囲を指定するもので、これを所望の精度に合わせて変更する事で、分数の絞り込みが出来ます。
電卓で実行するとなると、上限は10000くらいが良さそうです。後は、ユーザーの責任にて実行されたし !


リスト「pseudo-pi.bas」 (Android RFO BASIC 用)


REM Start of BASIC! Program

! title : pseudo-pi.bas
! begin : 2018-03-15 18:13
! note  : 分母を1から順番に検索し、近似値分数が分数を出力する

! precision
d = 0.000001

! pi
pi = atan(1)*4

!  検索ループ
for j = 1 to 10000
  ! 近似値分数を生成
  i = int(j * pi + 0.5)
  ! 近似値分数が精度の範囲内ならば、
  if abs(i/j - pi) <= d 
    ! 互除法で通分可能か調べる
    s = i
    t = j
    while mod(s,t) <> 0
      r = mod(s, t)
      s = t
      t = r
    repeat
    ! 通分出来ない場合、出力
    if r = 1
      print i, j, i/j
!    else 
!      print "..."
    endif

  endif

next j

end

50 件のコメント:

Sentaro さんのコメント...

akatuki様、こんにちは!

Perlは知ってるだけで全然詳しくないので、もはや暗号と思うしか無いのが悲しいところですが、(^^;
逆に考えればこの記述量でちゃんと結果が出てくるというのが驚異的ですね。

ということで、Android RFO BASIC版の方をサクッとfx-CG50に移植してみました。
実行時間は経過表示無しでノーマルCG50純正CasioBasicで54秒程、
C.Basic for CGでは若干1秒程というところでした。(^^)

やす (Krtyski) さんのコメント...

akatuki様


チョット出遅れましたが、手元では fx-5800P の Casio Basic移植して遊んでいました。
円周率を有理数(分数)でどこまで近づけるか...は面白いですね!


Rad↵
0.000001→D↵
4tan-₁(1)→P↵
For 1→J To 10000↵
Int(JP+0.5)→I↵
Abs(I÷J-P)→E↵
If E≦D↵
Then I→S:J→T↵
While S-TInt(S÷T)↵
S-TInt(S÷T)→R↵
T→S:R→T↵
WhileEnd↵
If R=1:Then ↵
Locate 1,1,I↵
Locate 1,2,J↵
Locate 1,3,I÷J↵
Else ↵
Locate 14,3,"..."↵
IfEnd↵
IfEnd↵
Next↵
Locate 1,3,I÷J↵
Locate 14,3," "↵


fx-5800P だと12分50秒と結構時間がかかります。
このソースをそのままfx-CG50で走らせると、1分4秒程度です。
210MHzにオーバークロックして純正Casio Basicで実行すると47秒。

一方、C.Basic で実行すると、2.42秒とかなり短時間で終了。

いずれも、31218/9927 = 0.141692039 でした。





Sentaro さんのコメント...

やす様、こんにちは!

>チョット出遅れましたが、手元では fx-5800P の Casio Basic移植して遊んでいました。
>円周率を有理数(分数)でどこまで近づけるか...は面白いですね!

fx-5800Pで動けばCasioBasic搭載機ではそのまま動作するので互換ポイント高いですよね。(^^)


>fx-5800P だと12分50秒と結構時間がかかります。
>このソースをそのままfx-CG50で走らせると、1分4秒程度です。

fx-CG50の速度から比較するとfx-5800Pは10倍遅いですが、
fx-9860GIIノーマルクロックだと2分23秒ほどかかりますから5倍しか違わないですね。
fx-5800Pの後継機種では最低でも2倍以上、最高で5倍位速くなる可能性もありますから一気に差が縮まるかもしれません。
そうなると、CG50はPython搭載になるので、10倍以上は速くなりそうですが、
fx-9860GIIはCasioBasicの処理速度的には大差なくなる可能性ありです。(^^;


>210MHzにオーバークロックして純正Casio Basicで実行すると47秒。

[F5]デフォルトプリセットの192MHzで41秒くらいだったので、
もしかしてIFCクロックが半分の26MHz前後になっているでしょうか?(^^;
表示なしの計算だけだともっと速くなるので、Locateコマンドがかなり重い感じですね。


>一方、C.Basic で実行すると、2.42秒とかなり短時間で終了。

かなり高速化効果出てますね。(^^)

やす (Krtyski) さんのコメント...

sentaro様


>>210MHzにオーバークロックして純正Casio Basicで実行すると47秒。

>[F5]デフォルトプリセットの192MHzで41秒くらいだったので、
>もしかしてIFCクロックが半分の26MHz前後になっているでしょうか?(^^;
>表示なしの計算だけだともっと速くなるので、Locateコマンドがかなり重い感じですね。

IFC: 1/2 です。

純正のLocateは、確かに重いですね。

Python で print がどの程度速くなるか、楽しみですね。

akatuki さんのコメント...

Sentaro 様、匿名 やす (Krtyski) 様
毎度の事ながら、遅れておりまして申し訳ない。

C.BASIC での評価、有難う御座居ます。

> CG50はPython搭載になるので、
> Python で print がどの程度速くなるか、楽しみですね。

と云うのは、どんな具合なのでしょうか ? CG500がLua稼動だそうですが、CG50へのPythonの導入が進められているのかナ ? だとすると、すんごい楽しみです !

akatuki さんのコメント...

やす (Krtyski) 様、上記では「匿名」と余計な語がついてしまい、申し訳ない。

fx-5800Pでの実行、有難う御座居ます。
当方も、HP35Sでチマチマ実行してみようか、などと思っておりました。
たまには、こうしたちょっとした計算を手元のプロ電で楽しむのもイイと思うのであります。

ちなみに、この計算をRFO BASICで出したのは、藤堂様がプチコンBASICで作業するかも ? と思っての事です。
どうでしょうか、藤堂様。

やす (Krtyski) さんのコメント...

akatuki様、皆様


えっと、akatuki様のBasicソースに対して、Casio Basic用に変更を加えたのは、Mod(S,T) の書き換えと print による出力を Locate に変更したこと、ループ脱出後の最後に円周率の結果を Locate で再描画したことです。

Mod( はfx-9860GII や fx-CGシリーズには搭載されていますが、 fx-5800Pには搭載されていないコマンドなので、Mod(S,T)の代わりに S-TInt(S÷T) としています。

Locate は、R=1 の時のみ実行されるので、For/Next での計算速度にはさほど影響は無いと思います。


で、Python はアドインの形で提供されると推測しています。なので、fx-CG50やおそらくfx-CG20にもアドインを入れるだけでPythonが使えるようになるだろう...なったらいいな、と思っています。

Pythonの言語仕様上、Cみたいに標準ライブラリにどこまで組み込んでくれるか?これが目下の興味の対象なんです。おそらく、現行Casio Basicのように、グラフ機能や関数をより便利に使いこなすためのマクロ言語的な位置づけの強い仕様になろうかと思っていて、それにどこまでプラスアルファしてくれるのかが、普通のプログラミング言語として見た時のポイントになりそうです!


Sentaro さんのコメント...

やす様、こんにちは!

>IFC: 1/2 です。

あ゛、間違えてました!
PFCの方でした。(^^;

>Locate は、R=1 の時のみ実行されるので、For/Next での計算速度にはさほど影響は無いと思います。

はい。今回のプログラムではLocateはあまり影響は無い感じですね。
PFCクロックは右上のビジー表示に関連して全体的な処理速度に影響するのでそこのあたりかなと思われます。

>で、Python はアドインの形で提供されると推測しています。なので、fx-CG50やおそらくfx-CG20にもアドインを入れるだけでPythonが使えるようになるだろう...なったらいいな、と思っています。

MicroPythonなのでCG20も対象になるのは間違い無さそうですね。
今出ている情報だとフォントの大きさが標準しかないみたいでかなり見通しが悪そうですが、半年後にはCGの標準言語になるくらい使いやすくなっていることを期待したいです。(^^)



akatuki様、こんにちは!

>と云うのは、どんな具合なのでしょうか ? CG500がLua稼動だそうですが、CG50へのPythonの導入が進められているのかナ ? だとすると、すんごい楽しみです !

CGシリーズのPythonはまだ半年先のことですが、非公式のLuaアドインはすでにあります。(^^)
CG500は純正のCasioBasic以外は使えないので、個人的には今の所一番魅力に欠けるグラフ電卓となっています。(^^;
CG500でも外部のアドインが使えるなら良いのですが、
TI-Nspireも外部プログラムのブロックと解除でイタチごっこがずっと続いてますし、
TI-84CEでも最新OSで機械語が使えなくされてたりと、このあたりは試験対応で年々制限きつくなってますね。(^^;


>当方も、HP35Sでチマチマ実行してみようか、などと思っておりました。
>たまには、こうしたちょっとした計算を手元のプロ電で楽しむのもイイと思うのであります。

Primeでも実行してみましたが2.2秒ほどで終了しました。
CG版C.BasicとPrimeではかなり似た結果になっています。(^^)


EXPORT PSEUDOPI()
BEGIN
local i,j,s,t,r,c,d;
c:=0;
d:=0.000001;
print();
S:=TICKS;
For j From 1 To 10000 Do
 i:=floor(j*pi+.5);
 If Abs(i/j-pi)<=d Then
  s:=i;
  t:=j;
  While s mod t Do
   r:=s mod t;
   s:=t;
   t:=r;
  end;
  If r==1 Then
   c:=c+1;
   print(i+":"+j+"="+i/j);
  End;
 End;
End;
t:=TICKS-S;
print(c+" "+t+"ms");
END;


>ちなみに、この計算をRFO BASICで出したのは、藤堂様がプチコンBASICで作業するかも ? と思っての事です。

プチコンだと1秒以下だと思われるので、一桁増やす必要がありそうかもですね。

やす (Krtyski) さんのコメント...

sentaro様、akatuki様

PFCは、1/16 です。

FLL:x916  15.01MHz
PLL:x 28  420.22MHz
IFC:1/2  CPU   210.11MHz
SFC:1/4  roR 10 105.05MHz
BFC:1/4  CL 2   105.05MHz
PFC:/16       26.26MHz

...となっています。


藤堂俊介 さんのコメント...

プチコンで確かめて見ましょう。

Sentaro さんのコメント...

akatuki様、やす様、藤堂様、こんにちは!

やす様、
>PFCは、1/16 です。
了解です。
ってことは、メインクロックをちょこっと下げて200MHzくらいにして、
PFCを1/8、50MHzにすれば10~20%くらいスピードアップする可能性あります。
C.BasicではPFCはあまり影響でないですが、純正CasioBasicではそこそこ影響ありますね。
ま、PFCアップは危険性が増すので、1/16が安全ではあります。(^^;


藤堂様、
今までのプチコンベンチマーク結果からすると軽くPrimeの10倍速はいきそうなので、一瞬で答えが出そうですね。(^^)

藤堂俊介 さんのコメント...

CasioBasicをプチコン用に合わせてみましょう。

藤堂俊介 さんのコメント...

ソースを参考にプチコンで組んでみました。
http://www.nanzo.net/dentaku/coldata/18.jpg
6行目で0除算エラー。組み方がまずかったか。仕切り直します。

Sentaro さんのコメント...

藤堂様、こんにちは!

>6行目で0除算エラー。組み方がまずかったか。仕切り直します。

5行目のIF文の有効範囲が一行だけになっていると思われるので、
11行目のNEXT Jの前にENDIFが必要かと思われます。(^^)
インデント付けるとこういう感じかと思います。

D=0.0000001
P=ATAN(1)*4
FOR J=1 TO 10000
 I=FLOOR(J*P+.5)
 IF ABS(I/J-P) <= D THEN
  S=I:T=J
  WHILE S MOD T != 0
   R=S MOD T
   S=T:T=R
  WEND
  IF R==1 THEN PRINT I,J,I/J ELSE PRINT "..." ENDIF
 ENDIF
NEXT J
END

藤堂俊介 さんのコメント...

http://www.nanzo.net/dentaku/coldata/19.jpg

動作しました。ありがとうございます。
10000は、一瞬。
100000は、5秒でした。

やす (Krtyski) さんのコメント...

akatuki様

昨晩投稿したコメントがはねられているかも知れません。

やす (Krtyski) さんのコメント...

藤堂様

やっぱり、プチコンは爆速ですね!

Basicで最速の携帯機はプチコンってとこでしょうか?

藤堂俊介 さんのコメント...

特にNew3DSと、New3DSの改良機、2DS LLは爆速です。

藤堂俊介 さんのコメント...

プチコンの開発元にもこの記事をお伝えしました。 https://mobile.twitter.com/notohoho

Sentaro さんのコメント...

藤堂様、
無事動作して良かったです。(^^)
それにしても、100000で5秒とは爆速過ぎますね!

>特にNew3DSと、New3DSの改良機、2DS LLは爆速です。

プチコンBIGも気にはなりますが、
2DS LLにもちょっと興味が…(^^;

藤堂俊介 さんのコメント...

 激しすぎる速度でした。100万にしたら、数分かかりました。

 プチコンBIGは、WiiUを持っていないかつ、製造終了になりましたから。
 携帯できる点と価格と入手しやすさで、2DSLLがいいかと。

Sentaro さんのコメント...

藤堂様、こんにちは!
100万ともなると表示が結構な比率を占めてくると思われるので、
経過表示無しでカウントだけするように変更したものがこれです。

C=0   // カウンタ初期化
D=0.0000001
P=ATAN(1)*4
FOR J=1 TO 100000
 I=FLOOR(J*P+.5)
 IF ABS(I/J-P) <= D THEN
  S=I:T=J
  WHILE S MOD T != 0
   R=S MOD T
   S=T:T=R
  WEND
  IF R==1 THEN C=C+1   // カウントのみ
 ENDIF
NEXT J
PRINT C   // カウント結果表示
END

途中の表示が無いので純粋な計算時間だけになります。

ちなみに、
CG50のC.Basicでは10万の場合、カウントは6060で16秒程になります。
100万だとカウント455964で11分ほどかかりました。

プチコンだと100万でも1分以内というところでしょうか。(^^)


>プチコンBIGは、WiiUを持っていないかつ、製造終了になりましたから。
>携帯できる点と価格と入手しやすさで、2DSLLがいいかと。

やっぱり携帯機の方が良さそうですね。
New2DS LLは液晶が視野角狭いTNらしいので、
視野角広いIPSのNew3DS LLとでちょっと悩みます。(^^;
(かなり買う気満々です…(笑)

藤堂俊介 さんのコメント...

Sentaro様
 早速実行しました。455964と表示されるまで約14秒でした。ここまで来ると、買いでしょう。(笑)

akatuki さんのコメント...

皆様、些事忙殺で、なかなかコメントがポスト出来ない状態が続いており、申し訳ない。

やす (Krtyski) 様

> 昨晩投稿したコメントがはねられているかも知れません。

との事ですが、スパムに入っておりませんで、bloggerの不具合かも知れません。申し訳ない。

Sentaro 様、HP Prime, プチコンのコード、有難う誤差居ます !

藤堂 様、やはりプチコンは早いですネ !

取り急ぎ

藤堂俊介 さんのコメント...

本当に速いです。驚きました。

Sentaro さんのコメント...

藤堂様、こんにちは!
>早速実行しました。455964と表示されるまで約14秒でした。ここまで来ると、買いでしょう。(笑)
100万までで14秒は想像以上の爆速ですね!
ってことで、
2DS LLと3DS LLと吟味した結果、視野角とプチコン3号フルスペック対応で3DS LLを発注しました。(^^)


akatuki様、こんにちは!
いつも興味深い記事をありがとうございます!
C.Basicの開発もまだまだ続きますが、目指せ!プチコン3号!ということで、
今後ともよろしくお願いします。(^^)

藤堂俊介 さんのコメント...

ついにプチコンデビューですね。C.Basicも大変優れていますから、活用法を考えていきましょう。プログラム関数電卓のよいところは、電源入れてすぐ使える、乾電池が使える、軽いなどあげられます。

akatuki さんのコメント...

やす (Krtyski) 様、遅れており、申し訳ない。

> で、Python はアドインの形で提供されると推測しています。
> なので、fx-CG50やおそらくfx-CG20にもアドインを入れるだけでPythonが使えるようになるだろう...なったらいいな、と思っています。

イイですね !
メーカーとしてはファーム更新という荒業もありそうです。いずれにしても今年8月なので、暫くは静観ですネ。

> Pythonの言語仕様上、Cみたいに標準ライブラリにどこまで組み込んでくれるか?これが目下の興味の対象なんです。
> おそらく、現行Casio Basicのように、グラフ機能や関数をより便利に使いこなすためのマクロ言語的な位置づけの強い仕様になろうかと思っていて、それにどこまでプラスアルファしてくれるのかが、普通のプログラミング言語として見た時のポイントになりそうです!

仰る通りです !
おそらく、電卓ハードウェア資源の活用として、グラフィクスなどの扱いを独自に拡張したものになろうかと。
ただ、それでもPythonの学習に使えるので、期待したいものです。BASICでは少々メンドウな再帰処理も出来るので。

akatuki さんのコメント...

sentaro 様、遅ればせながら。

> CGシリーズのPythonはまだ半年先のことですが、非公式のLuaアドインはすでにあります。(^^)
> CG500は純正のCasioBasic以外は使えないので、個人的には今の所一番魅力に欠けるグラフ電卓となっています。(^^;
> CG500でも外部のアドインが使えるなら良いのですが、

あれっ、LuaはCG50の方でしたか ! CG500は数式処理などが盛り込まれているので、てっきり、Luaとかで動作するのか、と勘違いしておりました。
道理で、余り話を聞かない ... 。

> TI-Nspireも外部プログラムのブロックと解除でイタチごっこがずっと続いてますし、
> TI-84CEでも最新OSで機械語が使えなくされてたりと、このあたりは試験対応で年々制限きつくなってますね。(^^;

「試験対応」、ですネ。悩ましい。
TIはBeagleBoneとかやっているとかで、バイナリ関連はワンボード・コンピュータでやってネ、なのかしらん ?
寂しいなぁ。

> Primeでも実行してみましたが2.2秒ほどで終了しました。
> CG版C.BasicとPrimeではかなり似た結果になっています。(^^)

早々に作業戴き、有難う御座居ます !

> 2DS LLと3DS LLと吟味した結果、視野角とプチコン3号フルスペック対応で3DS LLを発注しました。(^^)

ゲーッ ! 発注しましたか !!
藤堂様、朗報ですヨ 。
当方は、ネタが枯渇しており。

藤堂俊介 さんのコメント...

面白い記事を見つけました。https://news.mynavi.jp/article/challenge-1/ 
プチコンデビュー。まさか、BASICがゲーム機でまたできるとは。

akatuki さんのコメント...

藤堂様。お知らせ多謝です !

> https://news.mynavi.jp/article/challenge-1/ 

CASIO Thaiの記事ですネ。
製造現場の努力が伝わる、興味深い記事です。

Sentaro さんのコメント...

藤堂様、こんにちは!
>ついにプチコンデビューですね。C.Basicも大変優れていますから、活用法を考えていきましょう。プログラム関数電卓のよいところは、電源入れてすぐ使える、乾電池が使える、軽いなどあげられます。

おかげさまで、やっとこnew3DSLL+プチコン3号ユーザーになりました!(^^)
その昔のポケコンの21世紀版ここにありという感じですが、めちゃめちゃ便利になってますね。
使い勝手の上で見習わないといけないところがいくつもありますが、
C.Basicはまだまだ発展途上なので貪欲にいいとこ取りしていきたいと思っています。(^^)



akatuki様、こんにちは!
>あれっ、LuaはCG50の方でしたか ! CG500は数式処理などが盛り込まれているので、てっきり、Luaとかで動作するのか、と勘違いしておりました。
>道理で、余り話を聞かない ... 。

TI-Nspireは早期に公式にLuaを導入してたのですが、CasioはCG50のPythonでという流れですが、
CG500がこのまま何も無いはずはないので、おそらく同時期にPython搭載ということになるかもしれません。

>「試験対応」、ですネ。悩ましい。
>TIはBeagleBoneとかやっているとかで、バイナリ関連はワンボード・コンピュータでやってネ、なのかしらん ?
>寂しいなぁ。

TI-84シリーズは海外でのポケコンだと思っていたのですが、
教育用グラフ電卓としての立ち位置がより強くなってきてますよね。


>ゲーッ ! 発注しましたか !!

はい!、無事到着してちょこちょこいじくっております。(^^;
グラフ電卓よりもハードの性能が高く、セキュリティも高そうな感じなので、
NspireとかPrime、CASIOのグラフ電卓アプリ載せたら面白そうだと思うのですが、
なかなかそういう流れにはなりませんね。(^^;

ってことで、
シダの葉グラフィックスを移植してみました。
http://pm.matrix.jp/CB/PUTI3_SHIDA1.png
http://pm.matrix.jp/CB/PUTI3_SHIDA2.png
CG50のアドインで6秒でしたから、爆速過ぎです。

藤堂俊介 さんのコメント...

 現在に蘇ったポケコンでお楽しみいただいていますね。C.Basicの発展も進めていきましょう。それぞれの良いところを引き出して、プログラミングをのんびり長く楽しんでいきましょう。
 欲を言えば、3DSでC.Basicが走るソフトウェアが出ると、裾野はもっと拡がりますね。

akatuki さんのコメント...

Sentaro 様


> C.Basicはまだまだ発展途上なので貪欲にいいとこ取りしていきたいと思っています。(^^)

プチコンにはスタックを扱う命令があったらしいので、C.BASICにも拡張機能として、検討され度思います。

Sentaro さんのコメント...

藤堂様、こんにちは!
>欲を言えば、3DSでC.Basicが走るソフトウェアが出ると、裾野はもっと拡がりますね。

なかなか面白い試みです。(^^)
3DSのSDKとかあれば、とか思うんですが、さすがに現役ゲーム機ですし、一般ユーザーレベルには降りてきませんよね。(^^;
とりあえず、C.Basicが機能的にプチコンに近づいていけば移植の互換性も高くなりそうなので、しばらくはその線で攻めてみたいと思います。



akatuki様、こんにちは!
>プチコンにはスタックを扱う命令があったらしいので、C.BASICにも拡張機能として、検討され度思います。

んと、命令表を眺めてるとPush/Popというコマンドがあるんですが、スタックでは無さそうみたいです。(^^;
http://petitcom.net/3gou/manual/push
http://petitcom.net/3gou/manual/pop

スタックはサブルーチンの値の受け渡しに便利ですし、
コンパイラともなるとまた必須の機能となるので近い内に実装してみたいと思っています。(^^)

akatuki さんのコメント...

Sentaro 様、遅れておりまして申し訳ない。

> んと、命令表を眺めてるとPush/Popというコマンドがあるんですが、スタックでは無さそうみたいです。(^^;
> http://petitcom.net/3gou/manual/push
> http://petitcom.net/3gou/manual/pop

ありゃ、そうだったのですネ。
ウーム。

> スタックはサブルーチンの値の受け渡しに便利ですし、
> コンパイラともなるとまた必須の機能となるので近い内に実装してみたいと思っています。(^^)

おおっ、コレは !
RFO BASIC ! にはPush/Pop がありましたが、スタックトップを覗く (Pick)が無く、チョット欲しいかナ、なんて思いまして。
言語仕様で色々と考える事もありましょうから、ゆるりと取り掛かれ度。

藤堂俊介 さんのコメント...

面白い動画を見つけました。http://m.youtube.com/#/watch?v=gI8luQnyM9A

Sentaro さんのコメント...

akatuki様、こんにちは!
>RFO BASIC ! にはPush/Pop がありましたが、スタックトップを覗く (Pick)が無く、チョット欲しいかナ、なんて思いまして。
>言語仕様で色々と考える事もありましょうから、ゆるりと取り掛かれ度。

ありがとうございます。
いろいろな言語仕様を見ると特徴があって面白いですね。
便利に使えそうなものはどんどん取り入れたいので、Push/Pop/Pickも上手い具合に実装できたらと考え中です。(^^)



藤堂様、こんにちは!
new3DSはなんと804MHz!
ってことは、プチコン3号はすでに804MHz動作ってことでしょうかね。
HP-Primeからしても倍速なので、その爆速ぶりが納得できるところです。(^^)

Sentaro さんのコメント...

藤堂様、こんにちは!
>面白い動画を見つけました。http://m.youtube.com/watch?v=gI8luQnyM9A

リレーだけで平方根が計算できるとは…
ちょっとびっくりですね。

akatuki さんのコメント...

Sentaro 様、夜分に恐れ入ります。

> 便利に使えそうなものはどんどん取り入れたいので、Push/Pop/Pickも上手い具合に実装できたらと考え中です。(^^)

アレから色々と考えていまして、Push/Pop以外にPickを、申しましたが、浴を言いますと、スタックトップからのインデクスでスタック上のデータを直接読み書きできる仕掛けがあると、大変面白い事になりそうな気がしまして。
戯言ですから、聞き流して戴いても結構ですが。

藤堂俊介 さんのコメント...

Sentaroさま
 そうですね。その周波数で動いていますね。だから爆速はうなづけます。

藤堂俊介 さんのコメント...

話は飛びますが、検索していたら、カシオのパクリブランドを新たに見つけました。その名も、GAXIO。http://archive.is/G4h2O

藤堂俊介 さんのコメント...

2年前の動画を見つけました。液晶表示が不良のようです。https://m.youtube.com/watch?v=ovsYv-b-wWI

Sentaro さんのコメント...

藤堂様、こんにちは!
>話は飛びますが、検索していたら、カシオのパクリブランドを新たに見つけました。その名も、GAXIO。http://archive.is/G4h2O
>2年前の動画を見つけました。液晶表示が不良のようです。https://m.youtube.com/watch?v=ovsYv-b-wWI
外見だけ真似しても中身の品質に関しては、パクリはパクリということでしょうかね。(^^;
ただ、GAXIOなのでまだ区別が付きますが、
こちらに出ているパクリは見分けがつかないので悪質過ぎますね。(^^;
https://news.mynavi.jp/article/challenge-1/

藤堂俊介 さんのコメント...

この記事見ました。これは悪質どころか犯罪ですね。

akatuki さんのコメント...


GAXIO 、中国語の読みは「カシオ」ということなのかも知れません。そこにはCASIOブランドに対する「愛」が見て取れるのか、と。
中国の生産力は大変な事になっており、今日、スマートフォンの大半は中国製造であります。
CASIOも、電卓製品の多くを海外で生産しております。工業化が著しく進展する中国では人件費が嵩むからなのか、タイで工場を立ち上げている。
CASIOとしても苦労が絶えないのか。

藤堂俊介 さんのコメント...

 中国も人件費が上がり、質が上がりましたね。GAXIO,KADIOなどCASIO愛があるから生まれてくるんでしょうね。

akatuki さんのコメント...

藤堂 様

> 中国も人件費が上がり、質が上がりましたね。

仰る様に、中国は工業化が著しく進展しており、工員の質も向上し、労賃も上がってきております。
電卓製品は言うに及ばず、スマートフォンやタブレット、PCも多く製造しております。
日本のメーカーは、多く、国内生産を取り止め、海外生産を続けておりましたが、終いには電子機器製品の製造を止めてしまう所まで来てしまった。
CASIOは、未だ、海外で製造を続けるだけマシ、という所ではあります。

> GAXIO,KADIOなどCASIO愛があるから生まれてくるんでしょうね。

と、当方は思う所なのであります。

中国の生産力が、「世界の工場」として、様々な電子機器などを製造しております。
更に、有人宇宙船なども自国で開発し、打ち上げております。

欧米は、この中国の製造力を利用する事に腐心しております。それは、欧米の国々は国内に「富」を持っているからこそ、そういった国策が取れるのかも知れません。
しかし、日本は、どういった方策を採っていくのでしょうか ? 労働者の賃金は下げる方向で推移しており、国内にある少ない富を、株式市場へ打ち込んで、外資へタレナガシとか。

まあ、個人が何か出来るものではなく、選挙によって現内閣を支持してしまったので、
この行き先を国民総出で受け入れるしかないのですが。

グチばっかりや ... 。

藤堂俊介 さんのコメント...

 パクりの中国の印象が強いですが、以前は日本もモノマネだ、安かろう悪かろうと言われていた時代もありました。
 今や、製造の中心は、中国に移り、電子機器から航空機、果ては宇宙船まで。今から約四半世紀前、2020年代ごろには中国は日本の技術力を追い越すから、そうならないためにも学び研鑽するのが必要だと言ってきました。
 これが現実になりかけているのに、日本と言ったら、日本スゴい番組で自画自賛している現状。このままでは、立ち直れないくらい陳腐化するのではと感じています。
 中国を利用する富が少ない。(かつ外交がヘタクソ)格差は拡がる。現政権や与党を支持しがたい原因の一つです。
 ただ、カシオと任天堂が元気な間は、まだまだ捨てたものではありません。

akatuki さんのコメント...

藤堂 様、コメント多謝です !

仰る通りです。
ただ、今日はコイズミ以降「改革」の世。このまま「売国・亡国」の流れは突き進んで行くのかも知れません。
遠い将来、もしかすると「復興」する日が来るのかも、と希望 (希なる望み、ですが)しつつ。