Таким образом, моя цель для программы - получить матрицу Int для ввода, и программа преобразует все числа> 0 в уникальный последовательный символ, в то время как 0 преобразуется в '_' (не имеет значения, просто любой символне в последовательности).
например.
main> matrixGroupings [[0,2,1],[2,2,0],[[0,0,2]]
[["_ab"],["cd_"],["__e"]]
Лучшее, чего я смог достичь, это
[["_aa"],["aa_"],["__a"]]
, используя:
matrixGroupings xss = map (map (\x -> if x > 0 then 'a' else '_')) xss
Насколько я могу судить, проблема, с которой я сталкиваюсь, заключается в том, чтобы программа запомнила, каково было ее последнее значение, поэтому при проверке значения> 0 она выбирает следующий символ в строке. Хотя я не могу понять, как это сделать.
Любая помощь будет признательна.