Я новичок в Haskell, и у меня есть следующая проблема. Мне нужно создать список чисел [f1, f2, f3 ...] где fi x = x^i
. Затем мне нужно создать функцию, которая применяет fi
к списку чисел. Например, если у меня есть список lis = [4,5,6,7..]
, выход будет [4^1, 5^2,6^3, 7^4...]
. Это то, что я написал до сих пор:Функция отображения Haskell в список
powers x= [x^y |y<-[1,2,3,4]]
list = [1,2,3,4]
match :: (x -> xs) -> [x] -> [xs]
match f [] = []
match f (x:xs) = (f x) : (match f xs)
Так что, если я ставлю список = [1,2,3] выход [1,1,1,1] [2,4,8,16], [3,9,27,81] вместо [1,4,27]
Не могли бы вы рассказать мне, что не так, и указать мне в правильном направлении?
Или 'zipWith (^) list [1 ..]'. – dave4420
Хех - вот что я получаю за имитацию дизайна OP – Retief