Anonymous user
Subtractive generator: Difference between revisions
→{{header|Nim}}
Line 1,181:
var r: set[int16]
for n in 0..<I:
r.incl
r == x
Line 1,189:
template next(state): untyped =
state.addLast
discard state.popFirst()
Line 1,198:
#reorder and put into ring buffer
for i in 0..<I:
result.addLast
#cycle through the next 165 values
for _ in 0..<3*I:
Line 1,214:
result = proc(): int =
r.next
let subGen* = initSubGen[55, 24, 34, 1e9.int]
|