37 lines
666 B
Text
37 lines
666 B
Text
Function pancake(n As Integer) As Integer
|
|
Dim As Integer gap, pg, gapsum, adj, temp
|
|
|
|
gap = 2
|
|
pg = 1
|
|
gapsum = gap
|
|
adj = -1
|
|
While gapsum < n
|
|
adj += 1
|
|
temp = gap
|
|
gap += pg
|
|
pg = temp
|
|
gapsum += gap
|
|
Wend
|
|
|
|
Return n + adj
|
|
End Function
|
|
|
|
' Main program
|
|
Dim As Integer numbers(1 To 20), results(1 To 20)
|
|
Dim As Integer i, row, col, idx
|
|
|
|
' Generate sequence 1 to 20
|
|
For i = 1 To 20
|
|
numbers(i) = i
|
|
results(i) = pancake(i)
|
|
Next i
|
|
|
|
For row = 0 To 3
|
|
For col = 1 To 5
|
|
idx = row * 5 + col
|
|
Print Using "p(##) = ## "; numbers(idx); results(idx);
|
|
Next col
|
|
Print
|
|
Next row
|
|
|
|
Sleep
|