【发布时间】:2018-11-25 16:40:56
【问题描述】:
我正在尝试编写一个程序,该程序在输入中接受由列表列表(例如 [[1,2],[3,4],[5,6]])构成的矩阵,并将其转置作为输出 [[1,3,5],[2,4,6]]。
此版本有效,但由于它到达列表末尾并且不会停止,因此会出错。
transpose xxs = map head xxs : transpose (map tail xxs)
所以我尝试了这个
transpose xxs = if ((length xxs)>0) then
map head xxs : transpose (map tail xxs)
但我得到了错误
解析错误(可能是不正确的缩进或不匹配的括号)
所以我尝试编写没有括号的代码,全部在一行中,没有缩进,但我没有设法解决这个错误。
我开始怀疑这不是括号或空格的问题。
【问题讨论】:
-
你错过了
else。而且缩进确实不正确。
标签: haskell