投稿

N88-BASICでネイピア数 (1回目)

イメージ
2022/9/6(火) N88-BASICでネイピア数 (1回目)   ネイピア数e(Napier's constant)   Ⅰ. 年利1(100%)の利息について、1年をn等分して 複利で1年後の残金が何倍になるかを計算すると   n = 1 → 1+1 = 2倍 n = 2 → (1+1/2)(1+1/2) = (3/2) 2  = 9/4   = 2.25倍 となるので (1 + 1/n) n  倍になる   n=3 → (1 + 1/3) 3  = (4/3) 3  =     64/   27 ≒ 2.37倍 n=4 → (1 + 1/4) 4  = (5/4) 4  =    625/  256 ≒ 2.44倍 n=5 → (1 + 1/5) 5  = (6/5) 5  =   7776/ 3125 ≒ 2.48倍 n=6 → (1 + 1/6) 6  = (7/6) 6  = 117649/46656 ≒ 2.52倍 … n=∞にした時の倍率をeとすると e = lim[n→∞] (1 + 1/n) n   よってeはネイピア数となる(Ⅱを参照)   プログラムでは、nを入力し a = (1 + 1/n) n  とネイピア数e=exp(1)を 表示しています     Ⅱ. f(x) = a x 、f'(x) = (d/dx)f(x)として f'(x) = f(x)となるaをeとすると   f'(x) = lim[h→0] {f(x+h)-f(x)}/h = lim[h→0] (a x+h  - a x )/h = a x  lim[h→0] (a h  - 1)/h = a x  より lim[h→0] (a h  - 1)/h = 1 lim[h→0] (a h  - 1) = lim[h→0] h lim[h→0] a h  = lim[h→0] (1 + h) a = lim[h→0] (1 + h) 1/h   h = 1/nと置くと a = lim[n→∞] (1 + 1/n) n   よって   e = lim[n→∞] (1 + 1/n) n       VL,NL,XL-BASICとblg~.zip(napi001.bas)は 以下のリンク)からダウンロードできます https://ulprojectm

N88-BASICでパロンドのパラドックス

イメージ
2022/9/3(土) N88-BASICでパロンドのパラドックス   パロンド(Parrondo)のパラドックスとは 不利なゲームを組合わせているのに 有利なゲームができるというものだそうです   ゲームA(不利なゲーム)  48%の確率で1円得、52%の確率で1円払う   ゲームB(不利なゲーム)  所持金が3の倍数なら    1%の確率で1円得、99%の確率で1円払う  所持金が3の倍数以外なら   85%の確率で1円得、15%の確率で1円払う   ゲームC(有利なゲーム)  半々の確率でゲームAまたはゲームBをする   これら、ゲームA~Cの期待値を求めて見ます まず、 p a  = 0.48 p b0  = 0.01 p b1  = 0.85 p c  = 0.5 と置いて、式をつくります   ゲームA  p a の確率で1円得、1-p a の確率で1円払う   ゲームB  所持金が3の倍数なら   p b0 の確率で1円得、(1-p b0 )の確率で1円払う  所持金が3の倍数以外なら   p b1 の確率で1円得、(1-p b1 )の確率で1円払う   ゲームC  p c の確率でゲームA、(1-p c )の確率でゲームBをする   期待値E BC   所持金を3で割った余りが0,1,2である確率を それぞれx,y,zとし、 余りが0の時、勝つ確率をp 0 、それ以外の時、 勝つ確率をp 1 とする   所持金/3の余り:確率 0(x)→1(y,+1):p 0 、0(x)→2(z,-1):(1-p 0 ) 1(y)→2(z,+1):p 1 、1(y)→0(x,-1):(1-p 1 ) 2(z)→0(x,+1):p 1 、2(z)→1(y,-1):(1-p 1 )   x = (1-p 1 )y + p 1 z (y→x,z→x) y = (1-p 1 )z + p 0 x (z→y,x→y) z = (1-p 0 )x + p 1 y (x→z,y→z) x + y + z = 1   z + y = 1 - x 期待値E BC = {1円×p 0 -1円×(1-p 0 )}・x   … x→+1、x→-1 + {1円×p 1 -1円×(1-p 1 )}(y + z) … (y,z)→+1、(y,z)→-1 = (p 0 -1+p 0 )・x + (p

緑色の目をしたドラゴンの問題

イメージ
2022/9/1(木)   緑色の目をしたドラゴンの問題(Green-eyed dragons ) を100匹から3人にするなど多少アレンジした問題です   目の色が緑か赤のどちらかだと知らされている 緑目の3人A,B,Cが居る島があり、3人共次の条件がある   1. 他人の目の色は見る事が出来る 2. 自分の目の色を自身の思考以外で知る事は出来ない 3. 自分の目の色が分った時は、その日のうちに島を出る ある日(1日目)に島にやってきた旅人が 「この島人3人の内、少なくとも1人は緑目だ」 と言って去っていった 全員が島を去るのは何日目か                     1日目   緑目〇,赤目×、A,B,Cの思考をそれぞれ□,吹出,くも吹出とする (Aは、Bが「Cは全員が×の可能性を 否定できない 」と考えている、 と考えているが、旅人の一言で 否定できる 様になる)   Aの思考の中のBの思考の中のCの思考では A,B共に×ならCが〇なのでCは出ていくとAは考える Aの思考の中のCの思考の中のBの思考では A,C共に×ならBが〇なのでBは出ていくとAは考える   しかし、現実は全員〇なのでCもBも出ていかない (B,CもAと同じことを考えている)   2日目 B,C共出ていかなかったので、A,B共に×、A,C共に×は無しになる   Aの思考の中のBの思考ではB,Aの少なくとも1人は〇と考える のでAが×ならBは〇と分かりBは出ていくとAは考える Aの思考の中のCの思考ではC,Aの少なくとも1人は〇と考える のでAが×ならCは〇と分かりCは出ていくとAは考える   しかし、現実は全員〇なのでBもCも出ていかない (B,CもAと同じことを考えている)       3日目 B,C共出ていかなかったので、 Aは自分が×ではないので〇だと分かり出ていく   B,CもAと同じことを考えているので全員出ていく   答え、3日目(旅人が来てから2日後)に全員出ていく   人数が1人なら1日目に、2人なら2日目に出ていく 3人なら1日後に2人の時と同じになるので2+1日目に出ていく n人なら1日後にn-1人と同じになるのでn-1+1日目に出ていく つまり、n人ならn日目に出ていく  

d88ファイルの変換 (2回目)

2022/8/28(日) d88ファイルの変換 (2回目)   d88ファイルの紹介と動かし方     N.Matsukawa 様のページ http://www.cad-red.com/basic_magazine/ ディスクイメージのダウンロードで bm88_2ds.lzhをダウンロードする   ahirudanna 様のページ http://ahirudanna.html.xdomain.jp/haifu_pc-88.html PC-8801用プログラム集(2012年09月09日更新)から pc-88_02.lzhをダウンロードする     https://ulprojectmail.blogspot.com/2022/08/d88-1.html d88ファイル変換 (1回目) の手順でアスキーファイルに変換   出来たファイル ~ .bas を XL-BASICでLOADしてRUNする   SCREEN 0を実行しておく必要がある場合があります   動作が速すぎる場合は Alt+4 , Alt+7 , Alt+8 のどれかで遅くなります   動作が遅すぎる場合は Alt+5 , Alt+6 , Alt+9 , Alt+0 , Alt+- , Alt+^ などで速くなります   Alt+F2で初期状態になります   Beepの音量は初期状態では0で Alt+eで大きく、Alt+rで小さくなります Alt+Eで最大、Alt+Rで0になります   テンキーがない PCで テンキーを使用するときは 外付けのテンキーが必要です   動作しないプログラムや 実機と異なる動作をする場合が有ります     VL,NL,XL-BASICは 以下のリンクからダウンロードできます https://ulprojectmail.blogspot.com Readme.txtを読んで遊んで下さい  

d88ファイルの変換 (1回目)

2022/8/27(土) d88ファイルの変換 (1回目)   d88をbas(ascii)ファイル(PC-88)に変換する方法   ファイル変換は ~.d88 → ~.bas         … ① ~.bas(binary) → ~.bas(ascii) … ② の手順で解説します (Windows前提)     ① N88-BASICディスクイメージファイル~.d88ファイル から個別の~.basファイルを取り出す方法   Sasaji様のページ http://s-sasaji.ddo.jp/bml3mk5/#l3diskex から L3ディスクエクスプローラ(L3 Disk Explorer) を探して ダウンロード(Downloads) - (V0.6.0) [2022-05-05更新] をクリックしたページから   Windows 32ビット 実行ファイル (32bit Binary) l3diskex_win32_060.zip (2.2MB, 2022-05-05) をクリックしてダウンロードし 展開します   l3diskex.exe を走らせて、~.d88ファイルを読み込ませると 中身を見ることが出来、エクスポートで 個別のファイル(~.basなど)を取り出す事が 出来ます     ② バイナリーファイル~.bas(binary)を アスキーファイル~.bas(ascii)に変換する方法   TSAPPS開発室 様 のページ https://letsplay-retropc.tsapps.net/pc8801/n88basic-source-editor から ダウンロードとインストールをクリックした ページから   ダウンロードはここをクリック! をクリックして n88srced_v103.zip をダウンロードして展開し n88basic_srceditor.exe をクリックし アスキーファイルでは無いを選んで 読み込み SAVEするとアスキーセーブされます   グラフィックキャラクターを含まない ファイルはメモ帳で編集可能ですが   グラフィックキャラクターを含む 場合は n88basic_srceditor.exe で編集できます   また XL-BASIC に読み込ませ 編集や実行できるかもしれません   VL,NL,XL-BASIC

N88-BASICでサンクトペテルブルクのパラドックス (4回目)

イメージ
2022/8/26(金) N88-BASICでサンクトペテルブルクのパラドックス (4回目)   サンクトペテルブルクのパラドックス (The sankt petersburg paradox) とは   確率1/2のコインを表がでるまで投げるゲームで 1回目で表が出れば1円 … 確率1/2 2回目で表が出れば2円 … 確率1/4 3回目で表が出れば4円 … 確率1/8 i回目で表が出れば2 i-1 円… 確率1/2 i   がもらえるとすると このゲームの期待値Eは E = 1×1/2 + 2×1/4 + … + 2 i-1 ×1/2 i  …  = 1/2 + 1/2 + … + 1/2 + …  = ∞ 円 となり、1回1万円でもやった方が得? しかし、実際には損する確率が高い? という矛盾が生じるというパラドックスです     結果   kを入力 q = 10 -k  … (これより低い確率を無視する) n = [k(log10 / log2)] … (コインは最大n回まで) p(n) = (1/2) n  = 10 -h  … (上記の確率) E = n(1/2) … (その時の期待値)   (2回目)のプログラムに q = 10 -k  を0~kまで等分に変化させた k-Eグラフの表示を追加しました   グラフが階段状になるのはp(n)のnが自然数だからです   Eは10 -k  のkに比例しているようです   ほぼあり得ない確率で高配当になっている事が 期待値が大きいのに損をする確率が大きい 原因となっていると思います   永遠にゲームをやり続ける事ができれば いつかは得をする時が来るかもしれませんが 所持金や寿命には限界があります     NL-BASICとblg~.zip(sank004.bas)は 以下のリンクからダウンロードできます https://ulprojectmail.blogspot.com Readme.txtを読んで遊んで下さい  

N88-BASICでサンクトペテルブルクのパラドックス (3回目)

イメージ
2022/8/24(水) N88-BASICでサンクトペテルブルクのパラドックス (3回目)   サンクトペテルブルクのパラドックス (The sankt petersburg paradox) とは   確率1/2のコインを表がでるまで投げるゲームで 1回目で表が出れば1円 … 確率1/2 2回目で表が出れば2円 … 確率1/4 3回目で表が出れば4円 … 確率1/8 i回目で表が出れば2 i-1 円… 確率1/2 i   がもらえるとすると このゲームの期待値Eは E = 1×1/2 + 2×1/4 + … + 2 i-1 ×1/2 i  …  = 1/2 + 1/2 + … + 1/2 + …  = ∞ 円 となり、1回1万円でもやった方が得? しかし、実際には損する確率が高い? という矛盾が生じるというパラドックスです     結果   q = これより低い確率を無視する n = [log(q)/log(1/2)] … (コインは最大n回まで投げる) p(n) = (1/2) n  … (上記の確率) E = n(1/2) … (その時の期待値)   (1回目)のプログラムに qを1-q~qまで等分に変化させた q-Eグラフの表示を追加しました   グラフが階段状になるのはp(n)のnが自然数だからです   qが0 (1/∞)に近づくと急に期待値が上がるので   ほぼあり得ない確率で高配当になっている事が 期待値が大きいのに損をする確率が大きい 原因となっていると思います   永遠にゲームをやり続ける事ができれば いつかは得をする時が来るかもしれませんが 所持金や寿命には限界があります     NL-BASICとblg~.zip(sank003.bas)は 以下のリンクからダウンロードできます https://ulprojectmail.blogspot.com Readme.txtを読んで遊んで下さい