| >>double A1() {return B1() == 0 ? 0 : (C1() + func2(func1(D1(), AD5()), A2())) / B1()}; >>double A2() {return B2() == 0 ? 0 : (C2() + func2(func1(D2(), AD5()), A3())) / B2()}; >>double A3() {return B3() == 0 ? 0 : (C3() + func2(func1(D3(), AD5()), A4())) / B3()}; >>・・・
> ですが、再帰するとだめであるということがわかっている以上それ以外の解決策を模索するしかないので > 再帰しない形にアルゴリズムを改める必要があると思います。
C#が自動的にツリー状に関数呼び出ししている部分を自前で実装するには 1.各関数内に登場するメソッドを取得 2.呼び出しツリーを再帰を使わず作成 3.ツリーの末端から計算する でしょうか。
関数内に登場するメソッドを取得することってできますか? (クラスが持っているメソッドは取得できますが・・・)
|