私は、SML要素を使用してMOOCコースを修了しようとしているもう1人の初心者です。リストを受け取り、要素を合計した2番目のリストを作成する関数を作成したいと思います。
正しく実行されると、この関数は
before_reaching_sum_test([1,2,3,4,5,6,7,8,9]);
次のリストに変換されます
[1,3,6,10,16,23,31,40]
これは私がこれまでに持っているものですが、私はそれについて間違っていると確信しています。
fun before_reaching_sum_test(ints: int list) =
if null (tl ints)
then []
else (hd ints + hd (before_reaching_sum_test(tl ints)))::(before_reaching_sum_test(tl ints))
これにより、最初のリストの最後の要素が省略されることを私は知っています。しかし、このようなものは機能しますか?