#haskell
Вопрос:
addDivide n = if sum n / 5 then True else False
Я пытаюсь получить сумму списка, а затем посмотреть, делится ли сумма на определенное число
например, [5,5] = 10/5 = 2
Комментарии:
1. Вам просто нужно проверить, равен ли остаток при делении на 5 нулю или нет.
2. Незначительный момент: никогда не пишите
if condition then True else False
, это равносильноcondition
одиночеству. Кроме того,condition
должно быть логическое значение, а не число.
Ответ №1:
Вы можете проверить, можно ли Integral
a
разделить число на 5, проверив, можно ли n `mod` 5 == 0
.
Таким образом, вы можете проверить это с помощью:
addDivide :: (Foldable f, Integral a) => f a -> Bool
addDivide xs = sum xs `mod` 5 == 0