小编tde*_*eus的帖子

Haskell - 如何获取具有某些组合的元组列表

有没有办法创建具有特定模式的元组列表?

例如,我有以下输入:

a = 100

b = [10,20,30]

c = ['a','b','c','d','e','f','g']
Run Code Online (Sandbox Code Playgroud)

我想要以下输出:

[(100,10,'a'),(100,10,'b'),(100,10,'c'),(100,10,'d'),(100,10,'e'),(100,10,'f'),(100,10,'g'),
 (100,20,'a'),(100,20,'b'),(100,20,'c'),(100,20,'d'),(100,20,'e'),(100,20,'f'),(100,20,'g'),
 (100,30,'a'),(100,30,'b'),(100,30,'c'),(100,30,'d'),(100,30,'e'),(100,30,'f'),(100,30,'g')]
Run Code Online (Sandbox Code Playgroud)

我想如果我只有ab例如我会这样做:

makeTuple :: Int -> [Int] -> [(Int,Int)]
makeTuple _ [] = []
makeTuple i (x:xs) = [(i,x)] ++ makeTuple i xs
Run Code Online (Sandbox Code Playgroud)

这会给我:

[(100,10),(100,20),(100,30)]
Run Code Online (Sandbox Code Playgroud)

我不确定如何让它与 3 个输入一起工作。

haskell functional-programming

1
推荐指数
1
解决办法
128
查看次数

标签 统计

functional-programming ×1

haskell ×1