IterationList 命令

IterationList( <Function>, <Start Value>, <Number of Iterations> )

返回一个长度为 n+1 ( n = 迭代次数)的列表,其元素是从初始值开始对函数进行迭代的结果。

定义 f(x) = x^2 后,命令 IterationList(f, 3, 2) 将返回列表 {3, 9, 81} .

您还可以使用此命令定义一个序列,其中 a k+1 依赖于 a k k 。如果输入函数 f is a function of two variables and start value is a list of two numbers {s, a s } ,则输出列表由数字 a s , a s+1 ,…​., a s+n 其中对于 k>s 我们有 a k+1 =f(k, a k ) .

定义 f(k,a)=(k+1)*a ,这对应于阶乘的递归定义。命令 IterationList(f, {3, 6}, 4) 给出列表 {6, 24, 120, 720, 5040} .

IterationList( <Expression>, <Variable Name>, …​, <Start Values>, <Number of Iterations> )

给出一个长度为 n+1 ( n = 迭代次数)的列表,其元素是从给定的初始值开始对表达式进行迭代的结果。在每次迭代中,表达式中的变量会被列表的最后几个元素替换。初始值的数量应至少与变量的数量一样多,否则结果为 未定义 .

A , B 为点。命令 IterationList(Midpoint(A, C), C, {B}, 3) 在内部计算值 C 0 = B , C 1 = 中点 ( A , C 0 ), C 2 = 中点 ( A , C 1 ), C 3 = 中点 ( A , C 2 )并生成 { C 0 , C 1 , C 2 , C 3 }。因此对于 A = (0,0) 且 B = (8,0),结果将为 {(8,0), (4,0), (2,0), (1,0)}。

f 0 , f 1 为数字。 IterationList(a + b, a, b, {f_0, f_1}, 5) 用初始值填充结果 列表的前 2 个值。之后,值按如下方式计算: f 2 = f 0 + f 1 , f 3 = f 1 + f 2 , f 4 = f 2 + f 3 , f 5 = f 3 + f 4 。因此对于 f 0 = f 1 = 1,结果 将为 {1, 1, 2, 3, 5, 8}。

目前 CAS 仅支持第一种语法

另请参阅 Iteration .