19 lines
360 B
Text
19 lines
360 B
Text
Public Sub Main()
|
|
|
|
Dim n As Integer = 41 'prisoners
|
|
Dim k As Integer = 3 'order of execution
|
|
|
|
Print "n = "; n, "k = "; k, "final survivor = "; Josephus(n, k, 0)
|
|
|
|
End
|
|
|
|
Function Josephus(n As Integer, k As Integer, m As Integer) As Integer
|
|
|
|
Dim lm As Integer = m
|
|
|
|
For i As Integer = m + 1 To n
|
|
lm = (lm + k) Mod i
|
|
Next
|
|
Return lm
|
|
|
|
End Function
|