n人中m人が当選するくじ
Posted feedbacks - Vim
我ながら強引すぎるな...
(libcは動くかどうかわかりません汗)「:echo Lot(10, 5)」で実行
1 2 3 4 5 6 7 8 9 10 11 12 | fun! Lot(n, m)
let v = range(1, a:n)
while len(v) > a:m
if has('win32')
let r = libcallnr("msvcrt", "rand", 0)
else
let r = libcallnr("libc", "rand", 0)
endif
silent! call remove(v, (r % 10))
endwhile
return v
endfun
|
あ、ハードコーディング...orz
1 2 3 4 5 6 7 8 9 10 11 12 | fun! Lot(n, m)
let v = range(1, a:n)
while len(v) > a:m
if has('win32')
let r = libcallnr("msvcrt", "rand", 0)
else
let r = libcallnr("libc", "rand", 0)
endif
silent! call remove(v, (r % len(v)))
endwhile
return v
endfun
|




にしお
#3360()
Rating0/0=0.00
[ reply ]