我是新來的Haskell,我用從randomRIO功能使用IO詮釋問題的功能,使用從randomRIO隨機整數。我的目標是獲得一個隨機的Int值,比如說r,並且返回True,否則返回false,但我不知道如何去做。哈斯克爾:如何在返回boolean
我的功能看起來應該像:
randomCompare :: Int->Bool
randomCompare x
| x < r = True -- somehow i want to r <- randomRIO(start,end)
| otherwise = False
我知道有一個設計意圖在保持IO瓦爾斯在上下文中的純度等。但我不明白爲什麼使用隨機數的布爾函數應該是「壞」。
謝謝。
這是不可能的類型做'內部 - > Bool',因爲一個函數的結果只取決於它的輸入,這裏唯一的輸入是多少。如果你還傳入隨機數,那麼你有'randomCompare x r = x
immibis