【发布时间】:2014-02-18 21:46:15
【问题描述】:
我写了一个函数来随机从 [-10,10] 中获取一对。
import System.Random
main =
do {
s <- randomNumber
; b <- randomNumber
; print (head s,head b)}
randomNumber :: IO [Int]
randomNumber = sequence $ replicate 1 $ randomRIO (-10,10)
现在我想取一个像 [(1,2),(2,3),(2,3)] 这样的列表,所有的数字都来自 randomNumber。我怎样才能做到这一点?我不知道如何实现。
我尝试使用状态来获得随机性,但不知何故我无法在我的计算机上使用状态。 我这样做了:
import System.Random
import Control.Monad.State
randomSt :: (RandomGen g, Random a) => State g a
randomSt = State random
但是当我编译它时,它显示:不在范围内:数据构造函数'State'
【问题讨论】:
标签: haskell