2
하스켈에서 Int
의 목록을 변경하여 특정 한도 내로 유지하려고하지만 작동하지 않는 것 같습니다. 목록에있는 모든 int를 32에서 127 사이에 두려고 노력하고 있지만 작동하지 않습니다. 왜 아무도 이것이 작동하지 않는 이유를 설명 할 수 있습니까?각 개인에 대한 제한 설정 방법
limit :: Int -> Int
limit n | n > 127 = n `mod` 127 + 32
| n < 32 = n + 127 - 32
| otherwise = n
limitList :: [Int] -> [Int]
limitList [] = []
limitList (x:xs) = [limit x] ++ limitList xs
"127 ~ 32시에 앉는다"는 것은 무엇을 의미합니까? 이 범위 사이에 * 없다면 어떻게 될 것입니까? –
n = 253으로하고 첫 번째 절이 원하는 것을 수행하지 않는 것으로 관찰하십시오. 두 번째 절과 비슷한 문제가 있습니다. 왜 32를 더하고 있니? – amalloy
이 경계 사이에 있지 않으면 다시 돌아가고 싶습니다. int가 128이면 32가되고 int가 31이면 127이됩니다. –