'using 1 to n define prisoners = 0, step = 0, killcount = 0, survivor = 0 define fn (josephus) as ( survivor + step ) % killcount do input "Prisoners", prisoners input "Step", step gosub executioner loop sub executioner let killcount = 1 do let killcount = killcount + 1 let survivor = (josephus) loop killcount < prisoners print "survivor = ", survivor return