不思議な、RND

 投稿者:SECOND  投稿日:2014年 8月 8日(金)12時58分45秒
  !不思議な、RND
!------------------------

!正三角形のある頂点の上に、カエルが一匹乗っています。
!カエルは正三角形の頂点のうち一つを適当に選び、そこに
!ジャンプを試みますが、半分までしか飛べず、途中で着地
!してしまいます。その後も、頂点を適当に選んではジャン
!プを試みる・・・
!
!・・カエルが着地した地点に点を打つとすれば、最終的には
!どんな図形が描かれるでしょうか?( 上のサイトからの引用)

! カエルの軌跡
!------------------------
OPTION ARITHMETIC COMPLEX
SET POINT STYLE 1
SET WINDOW -1.05, 1.05,  -1, 1.1
DRAW grid(.2,.2)
RANDOMIZE
!
LET N=3                               !角数
!---
DIM p(N)
LET w=2*PI/N                          !頂点ステップ角
LET s=-(PI+w)/2                       !スタート角オフセット
FOR i=1 TO N
   LET p(i)=EXP( COMPLEX(0, s+w*i) )  !底辺を揃えた N角形頂点の座標
NEXT i
!---
FOR i=1 TO N
   PLOT LINES: p(i);                  !N角形 輪郭
NEXT i
PLOT LINES: p(1)
!---
LET w=p(1)
FOR i=1 TO 50000
   LET s=IP(RND*N)+1       !LET s=MOD(i,N)+1 ←× (sの同配分だけでは、図が出来ない)
   LET w=( w +p(s))/2
   PLOT POINTS: w
NEXT i

END
 

Re: 不思議な、RND

 投稿者:GAI  投稿日:2014年 8月10日(日)07時43分45秒
  > No.3453[元記事へ]

SECONDさんへのお返事です。


>
> ! カエルの軌跡
> !------------------------
> OPTION ARITHMETIC COMPLEX
> SET POINT STYLE 1
> SET WINDOW -1.05, 1.05,  -1, 1.1
> DRAW grid(.2,.2)
> RANDOMIZE
> !
> LET N=3                               !角数
> !---
> DIM p(N)
> LET w=2*PI/N                          !頂点ステップ角
> LET s=-(PI+w)/2                       !スタート角オフセット
> FOR i=1 TO N
>    LET p(i)=EXP( COMPLEX(0, s+w*i) )  !底辺を揃えた N角形頂点の座標
> NEXT i
> !---
> FOR i=1 TO N
>    PLOT LINES: p(i);                  !N角形 輪郭
> NEXT i
> PLOT LINES: p(1)
> !---
> LET w=p(1)
> FOR i=1 TO 50000
>    LET s=IP(RND*N)+1       !LET s=MOD(i,N)+1 ←× (sの同配分だけでは、図が出来ない)
>    LET w=( w +p(s))/2
>    PLOT POINTS: w
> NEXT i
>
> END


たったこれだけのアルゴリズムでこんなに面白い図形が浮かび上がることに驚きました。
これをいじってたら
LET N=5
LET w=(2*w+3*p(s))/5
の場合に感動しました。

 

戻る