local fn Josephus( n as int, k as int, m as int ) as int int lm = m for int i = m + 1 to n lm = (lm + k) % i next end fn = lm int n : n = 41 // prisoners int k : k = 3 // order of execution printf @"Prisoners: %d\nOrder of execution: %d\nFinal survivor: No. %d", n, k, fn Josephus( n, k, 0 ) HandleEvents