这是我的代码:
数学问题简单地如下所示:
当我测试
let rec sum n =
if n <= 0 then 0
else if n / 2 * 2 = n then 3 * n + 50 * (sum n-2)
else n + 10 * (sum n-1);;
数学问题简单地如下所示:
sn =
0 if n = 0
50*sn-2 + 3*n, if n > 0 and n is even
10*sn-1 + n , if n > 0 and n is odd
当我测试
sum 5
时,出现了如下的"堆栈溢出"错误:
请问有人能帮我解决这个问题吗?在求值过程中发生堆栈溢出(循环递归?)。