n个布尔型变量,其中一个为真,则其他全部为假。
varbool 一维数组 类型为bool(输入输出)
P_Edge 一维数组 类型为bool(FB块 静态变量)(起到上升沿的作用)
n 数组元素数量 类型为int(输入)
i 整数 循环计数变量 类型为int(临时变量)
//第一种方法
FOR #i := 0 TO n DO
IF #"varbool"[#i] AND (NOT #P_Edge[#i]) THEN
FOR #j := 0 TO n DO
#"varbool"[#j] := FALSE;
END_FOR;
#"varbool"[#i] := TRUE;
END_IF;
#P_Edge[#i] := #"varbool"[#i];
END_FOR;
//第二种方法
FOR #i := 0 TO n DO
IF #"varbool"[#i] AND (NOT #P_Edge[#i]) THEN
FOR #j := 0 TO n DO
IF #j <> #i THEN
#"varbool"[#j] := FALSE;
END_FOR;
END_IF;
#P_Edge[#i] := #"varbool"[#i];
END_FOR;