首先科普下简单的函数知识,我们根据函数在程序中出现的位置,常用有下列三种函数调用方式
将函数作为表达式调用时,函数的返回值参与表达式的运算,此时要求函数必须有返回值,SCL示例代码如下:
"Data".Temper_Pv2 := "S_ITR"(INPUT := "Data".AI2, ISH := 27648, ISL := 0, OSH := 200.0, OSL := 0.0);
首先我们看下利用FOR循环如何实现简单的阶乘运算
FUNCTION "FC_Factorial" : DInt
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
//计算N的阶乘
VAR_INPUT
N : Int; // 输入整数
END_VAR
VAR_TEMP
i : Int;
result : DInt;
END_VAR
BEGIN
//一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!
//n!=1×2×3×…×(n-1)×n 或 n!=n×(n-1)!
//RXXW_Dor
IF #N = 0 THEN
#FC_Factorial := 1;
ELSE
#result := 1;//初始化为1
FOR #i := 1 TO #N DO
#result := #result * #i;
END_FOR;
#FC_Factorial := #result;
END_IF;
END_FUNCTION
未完...