とりあえず作ってみた。ドラゴン曲線。その3。
東方算程譚:dragon-curve
言葉のまま書いたらこうでした→とりあえず作ってみた。ドラゴン曲線。
ちょっと整理したらこうでした→とりあえず作ってみた。ドラゴン曲線。その2。
で、ぶつぶついいながらやってるとこうなりました。
あ、描画しなきゃ・・・。orz
[Visual basic]
Imports System
Public Class ドラゴン曲線
Public Function 作る(ByVal 折り曲げる回数 As Integer) As String
Return 折り曲げる(折り曲げる回数, String.Empty)
End Function
Private Function 折り曲げる(ByVal あと何回折り曲げるか As Integer, ByVal 今の状態 As String) As 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