3

Mathematica 9 で上限が可変の for ループを書きたいと思っています。

  j = 0;
  For[n = 1, n <= 3, n++, j = j + n];
  j
  (*6*)

やりたい

  N = 3;
  j = 0;
  For[n = 1, n <= N, n++, j = j + n];
  j
  n
  (*
  0
  1
  *)

. しかし、示されているように、これはまったく正しい結果をもたらしません。の値からn、ループの本体がまったく評価されていないことがわかります。

for ループとループおよび制御構造の両方に関する Mathematica のドキュメントをより一般的に調べました (また、いくつかの DuckDuckGo 検索も行いました) が、まだ基本的なものが欠けています。それは何ですか?

完全を期すために、私の最終的な目標はこれを関数に入れることであることに注意してください。

foo[N] =
 Module[{j = 0},
   For[n = 1, n <= N, n++, j = j + n;];
   j]
foo[3]
4

1 に答える 1