1

calcArr_ArrOfArrF# で署名付きで呼び出される関数がありますint [] -> int [][] -> int。つまりcalcArr_ArrOfArr、int 配列と int 配列の配列の 2 つの引数を取り、int を返します。

calcArrOfArr次のことを行う署名付きの関数を作成したいと思いint [][] -> intます。

let calcArrOfArr (arrOfArr : int [][]) =
    Array.fold (fun acc e -> acc + (calcArr_ArrOfArr e arrOfArr.[?..])) 0 arrOfArr

whereは+ 1?のインデックスになります。 つまり、 in のすべての要素に の「残りの部分」、つまり要素の後から始まるスライスを適用したいと考えています。もちろん、 の最後の要素については、アキュムレータには何も追加されず、例外もスローされません。 機能的な方法で作成する方法はありますか? 関数が便利になる...e
calcArrOfArrcalcArr_ArrOfArrearrOfArrarrOfArrarrOfArrearrOfArr
calcArrOfArrArray.foldi

4

2 に答える 2