Годд Утро,
Я пытаюсь выполнить контрольную сумму для следующей функции
Data = [<<"9">>,"81",
<<1>>,
<<"52=">>,
[[50,48,49,48,49,48,50,54,45,49,53,":",52,53,":",52,52]],
<<1>>,
<<1>>,
[<<"9">>,<<"0">>,<<1>>],
[<<"5">>,<<"4">>,<<1>>]]
Использование:
checksum(Data) -> checksum(Data, 0).
checksum([H | T], Acc) ->
if
is_binary(H) ->
I = binary_to_list(H);
true ->
I = H
end,
checksum(T, I + Acc);
checksum([], Acc) -> Acc.
В основном необходимо разбить данные на дискретные числа
в идеале это выглядело бы как [56,45,34,111,233, ...]
, а затем сложите их все вместе.
Компилятор выдаёт мне ошибки, что бы я ни пытался. У меня было решение, прежде чем это было очень просто, но теперь одно изменение в пищевой цепи повлияло на это.
Пожалуйста, помогите, и наилучшие пожелания!