アットウィキロゴ

実験

Private Sub Command1_Click()
Dim s As Single
Dim th(1 To 20) As Single
Dim u(1 To 20, 0 To 10, 0 To 10) As Single
Dim w(1 To 19, 0 To 10, 0 To 10) As Single
Dim v(1 To 20, -100 To 100, 0 To 10, 0 To 10) As Single
Dim z As Single
Dim c1 As Single
Dim l1 As Single
Dim u1 As Single
Dim mx As Single
Dim nx As Single
For s = 1 To 20
th(s) = 0.02 * s
Next
For s = 1 To 20
For m = 0 To 10
For n = 0 To 10
z = 0
l1 = 0.01 * m / th(s)
If l1 > 0.99 Then z = 1
If l1 > 0.99 Then l1 = 0.99
c1 = 0.13 + 0.01 * n
u(s, m, n) = Log(c1) + Log(1 - l1)
If z = 1 Then u(s, m, n) = -999
Next
Next
Next
For s = 1 To 19
For m = 0 To 10
For n = 0 To 10
z = 0
l1 = 0.01 * m / th(s + 1)
If l1 > 0.99 Then z = 1
If l1 > 0.99 Then l1 = 0.99
c1 = 0.13 + 0.01 * n
w(s, m, n) = Log(c1) + Log(1 - l1)
If z = 1 Then w(s, m, n) = -999
Next
Next
Next
For s = 1 To 20
For q = -100 To 100
For m = 0 To 10
For n = 0 To 10
v(s, q, m, n) = -999
Next
Next
Next
Next
s = 1
For m = 0 To 10
For n = 0 To 10
q = n - m
v(s, q, m, n) = u(s, m, n)
Next
Next
For s = 2 To 20
For q = -100 To 100
For m = 0 To 10
For n = 0 To 10
u1 = u(s, m, n)
vps = -999
For mx = 0 To m - 1
For nx = 0 To n - 1
qx = q + m - n
If w(s - 1, mx, nx) > u1 Then z = 1
z = 0
If qx > 100 Then z = 1
If qx > 100 Then qx = 100
If qx < -100 Then z = 1
If qx < -100 Then qx = -100
v1 = v(s - 1, qx, mx, nx)
vp = u1 + v1
If u1 < -900 Then z = 1
If v1 < -900 Then z = 1
If z = 1 Then vp = -999
If vp > vps Then vps = vp
Next
Next
mx = m
nx = n
qx = q + m - n
z = 0
If qx > 100 Then z = 1
If qx > 100 Then qx = 100
If qx < -100 Then z = 1
If qx < -100 Then qx = -100
v1 = v(s - 1, qx, mx, nx)
vp = u1 + v1
If u1 < -900 Then z = 1
If v1 < -900 Then z = 1
If z = 1 Then vp = -999
If vp > vps Then vps = vp
v(s, q, m, n) = vps
Next
Next
Next
Debug.Print s
Next
For q = 1 To 100
For m = 1 To 10
For n = 1 To 10
Debug.Print v(20, q, m, n)
Next
Next
Next




End Sub
最終更新:2009年08月10日 16:45