gpt4 book ai didi

haskell - 生成随机元组 Haskell

转载 作者:行者123 更新时间:2023-12-04 22:48:41 27 4
gpt4 key购买 nike

我想知道是否可以使用如下代码生成随机元组:

take 4 $ randomRs ((0,0),(70,100)) $ mkStdGen x  :: [(Double,Double)]

当我尝试这个时,我收到错误:
No instance for (Random (Float, Float)) arising from a use of 'randoms'
有没有办法在不使用 zip 的情况下获得随机元组? ?

最佳答案

基本上错误消息是说没有定义的方法来制作随机元组。但是你当然可以自己添加一个。

在我的脑海里(即,我还没有真正测试过这个),你可以做类似的事情

instance (Random x, Random y) => Random (x, y) where
randomR ((x1, y1), (x2, y2)) gen1 =
let (x, gen2) = randomR (x1, x2) gen1
(y, gen3) = randomR (y1, y2) gen2
in ((x, y), gen3)

现在您可以使用 randomR在元组上(前提是元组中的类型支持随机生成)。

关于haskell - 生成随机元组 Haskell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13669803/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com