暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

SCL编程实例100例-038-数组的基本操作

工控老炮儿 2022-12-07
3166

1 | 题目



编写程序实现数组的基本运算操作,给定任意长度或大小的浮点数一维数组,计算并输出数组中元素的最小值、最大值、和、平均值



2 | 设计分析



首先要获取任意长度数组的上下限值,然后根据上下限值进行循环运算。



3 | 创建功能或功能块



创建功能块FC,命名为“ArrayBasicOperReal”。




4 | 定义接口变量



具体接口变量定义见下图:

定义了可变长(泛型或可变限值)浮点数一维数组,数据类型为#Array[*] of Real。



5 | 程序代码



编写程序代码。如下图:


本例数据类型只支持浮点数,使用了指令“TypeOf()”获取输入的可变长数组元素的数据类型,对于非浮点数不进行运算并直接返回,注意程序中的处理方式。



6 | 代码测试



在循环OB中调用FC-“ArrayBasciOperReal”。如下图:

定义了全局数据块GdbArrayBasicOperRealData作为实参传递给形参。

转至在线并监控程序。如下图


给定数组为#arrayReal[0..10]={1.0, 5.0, 9.0, 2.0, 8.0, 6.0, 7.0, 1.0, 8.0, 6.0, 0.0},求得最小值0.0,最大值9.0,和53.0,平均值4.818182。



7 | 总结



学习指令TypeOf(),返回值为type_id;

学习可变长一维数组的定义和使用;

学习使用IF语句;

学习使用FOR循环语句;

学习RETURN指令在程序中的作用;

学习在OB中调用FC和实参的传递方式

- END -

工控老炮儿


分享 | 咨询 | 合作 | 共赢



​​

文章转载自工控老炮儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论