とりあえず作ってみた。ドラゴン曲線。その3。

東方算程譚:dragon-curve
言葉のまま書いたらこうでした→とりあえず作ってみた。ドラゴン曲線。
ちょっと整理したらこうでした→とりあえず作ってみた。ドラゴン曲線。その2。

で、ぶつぶついいながらやってるとこうなりました。


[Visual basic]


Imports System


Public Class ドラゴン曲線



  Public Function 作る(ByVal 折り曲げる回数 As IntegerAs String

    Return 折り曲げる(折り曲げる回数, String.Empty)

  End Function



  Private Function 折り曲げる(ByVal あと何回折り曲げるか As IntegerByVal 今の状態 As StringAs String

    If あと何回折り曲げるか = 0 Then

      Return 今の状態

    End If

    Dim 折り曲げた後 As String = 今の状態 & "L"

    For i As Integer = 今の状態.Length - 1 To 0 Step -1

      If 今の状態.Substring(i, 1) = "L" Then

        折り曲げた後 &= "R"

      Else

        折り曲げた後 &= "L"

      End If

    Next

    Return 折り曲げる(あと何回折り曲げるか - 1, 折り曲げた後)

  End Function



End Class

あ、描画しなきゃ・・・。orz