Я пытаюсь решить проблему, которая требует, чтобы я суммировал 2 числа, но я должен использовать аккумулятор в своей функции.Вот математическая формула:
sum(m, n) = m + (m + 1) + (m + 2) + · · · + (m + (n − 1)) + (m + n)
Вот что у меня есть:
let rec g (m, n) =
let rec gAcc m n a =
match n with
| 0 -> a + m
| n -> gAcc m (n-1) (a+n+m)
let result = gAcc n m 0
result // returned by g
Примером будет g(1,2)
, должно возвращаться 5. Я не уверен, что яя на правильном пути здесь?Есть идеи?