IterationList コマンド
- IterationList( <関数>, <開始値>, <反復回数> )
-
長さn+1(n = 反復回数)のリストを与え,その要素は開始値から始まる関数の反復である.
f(x) = x^2
を定義した後, IterationList(f, 3, 2)
を実行すると,リスト: {3, 9, 81}が出力される.
このコマンドを使えば, ak+1 が ak とkに依存するような数列を定義することもできる.入力関数fが2変数の関数で,開始値が2つの数値{s, as}のリストとすると,出力リストはas,as+1,….,as+nという数値の並びになる.ここで,k>s のとき,ak+1=f(k, ak)という関係が成り立つ.
f(k,a)=(k+1)*a
と定義すると,この関数は階乗の再帰的定義に対応する.コマンド IterationList(f, {3, 6}, 4)
は,この関数を初期値{3, 6}から4回繰り返し適用した結果のリスト{6, 24, 120, 720, 5040} を出力する.
- IterationList( <式>, <変数>, …, <開始値>, <反復回数> )
-
n回の反復 (nは反復回数)を行った結果の長さ n+1 のリストを出力する.このリストの要素は,与えられた開始値から始まる式の反復である.各反復では,式中の変数がリストの直前の要素に置き換えられる.変数の数だけ開始値が必要であり,それが不足している場合の結果は未定義になる.
A,Bを点とする.コマンド IterationList(Midpoint(A, C), C, {B}, 3)
は,点Cを初期値Bから始めて,点Aとの中点を次々に求めることで,値C0
= B, C1 = Midpoint(A, C0), C2 = Midpoint(A, C1), C3 = Midpoint(A,
C2) を内部的に計算する.そして,{C0, C1, C2, C3}というリストを出力する.したがって,A =
(0,0),B = (8,0)の場合,結果は{(8,0), (4,0), (2,0), (1,0)}となる.
f0 , f1 を数値とする.IterationList(a + b, a, b, {f_0, f_1}, 5)
は,出力されるのリストの最初の2つの値を開始値として設定する.その後,値はf2 = f0 + f1, f3 =
f1 + f2, f4 = f2 + f3, f5 = f3
f4という式に従って計算される.したがって,f0 = f1 = 1の場合,結果は{1, 1, 2, 3, 5, 8}となる.
現在,CASでは最初の構文のみがサポートされている. |
こちらも参照: Iteration コマンド. |