21/02/07 08:14:46.90 mBcVq97u.net
>>882
Mのx座標の算出過程:
r/(r+R)*((1+r+R-r*R)/(1+r)-(1+r))+1+r
=(r^2+3*r*R+r+R)/((r+1)*(r+R))
のような式変形は手書きでやると括弧の対応を間違えるそうになるけどプログラム上で書くと対応する括弧が色付きで表示されるし対応してないとエラーがでる。
変数に適当に乱数を割り当てて具体的な数値計算して合致しているのを確認すればミスが防げる。
r=runif(1)
R=runif(1)
r/(r+R)*((1+r+R-r*R)/(1+r)-(1+r))+1+r
(r^2+3*r*R+r+R)/((r+1)*(r+R))
> r=runif(1)
> R=runif(1)
>
> r/(r+R)*((1+r+R-r*R)/(1+r)-(1+r))+1+r
[1] 1.439751
>
> (r^2+3*r*R+r+R)/((r+1)*(r+R))
[1] 1.439751
∴ プログラムは式変形の確認にも有用。