递推算法以初始(起点)值为基础,用相同的运算规律,逐次重复运算,直至运算结束。这种从“起点”重复相同的方法直至到达一定“边界”,犹如单向运动,用循环可以实现。递推的本质是按规律逐次推出先一步的结果。
(*递推简要实例1*)
PROGRAM DataBackstepping
VAR
i:INT;
Data:ARRAY[1..10]OF INT:=1,2,3,4,5,6,7,8,9,10;
END_VAR
FOR i:=10 TO 1 BY -1 DO
Data[i]:=Data[i-1];
END_FOR
本程序递推运算按以下演示解释:
i=10,Data[10]:=Data[9]--------i=9,Data[9]:=Data[8]--------i=8,Data[8]:=Data[7]...依次类推..i=1,Data[1]:=Data[0];,Data[10]原值10会被覆盖为9,数据整体先从元素高位覆盖至元素低位;
(*递推简要实例2*)
同数组元素相加
PROGRAM DataBackstepping2
VAR
i:INT;
Data:ARRAY[1..100]OF INT;
END_VAR
FOR i:=1 TO 100 DO
Data[i]:=Data[i]+Data[i-1];
END_FOR
(*递推简要实例3*)