用ST语言写一个向下移位数组数据程序
时间: 2023-12-04 09:04:47 浏览: 59
以下是使用 ST 语言编写的向下移位数组数据程序示例:
```
PROGRAM ShiftDown
VAR
InputArray : ARRAY[1..5] OF INT := [1, 2, 3, 4, 5]; // 输入数组
ShiftNum : INT := 2; // 向下移位数
OutputArray : ARRAY[1..5] OF INT; // 输出数组
i : INT; // 循环计数器
END_VAR
// 向下移位操作
FOR i := 1 TO 5 DO
IF i + ShiftNum > 5 THEN
OutputArray[i] := InputArray[i + ShiftNum - 5];
ELSE
OutputArray[i] := InputArray[i + ShiftNum];
END_IF
END_FOR;
// 输出结果
MESSAGE('InputArray: ' + InputArray + ', ShiftNum: ' + ShiftNum + ', OutputArray: ' + OutputArray);
```
在上面的示例中,我们定义了一个包含 5 个元素的 INT 数组 InputArray,表示输入数组,以及一个 ShiftNum 变量,表示向下移的位数。然后,我们使用 FOR 循环遍历数组中的每个元素,根据移位数计算出对应的下标,将原数组中对应下标的元素复制到输出数组中。需要注意的是,当移位数大于数组长度时,需要将下标值减去数组长度。
最后,我们使用 MESSAGE 函数输出结果。