首页 » Web前端 » php数组累加技巧_ST 措辞数组处理

php数组累加技巧_ST 措辞数组处理

访客 2024-11-04 0

扫一扫用手机浏览

文章目录 [+]

排序:能够对输入的数组进行从小到大或从大到小的排序。
最大值和最小值:快速找出数组中的最大值和最小值。
均匀值:打算数组的均匀值。
中位值:找到数组的中位值,并处理奇数和偶数长度的情形。

通过这些功能,用户可以方便地对数组进行全面剖析。
2 程序代码FUNCTION_BLOCK PM_ArrayProcessing_v2VAR_INPUTSortAscBtn : BOOL;SortDescBtn : BOOL;MaxBtn : BOOL;MinBtn : BOOL;AvgBtn : BOOL;MedianBtn : BOOL;InputArray : ARRAY[1..11] OF REAL;END_VARVAR_OUTPUTSortedAscArray : ARRAY[1..11] OF REAL;SortedDescArray : ARRAY[1..11] OF REAL;MaxValue : REAL;MinValue : REAL;AvgValue : REAL;MedianValue : REAL;END_VARVARTempArray : ARRAY[1..11] OF REAL;I, J : INT;Temp : REAL;Sum : REAL;ArrayLength : UINT;END_VAR(版本记录:版本 日期 作者V1 2024-3-21 工控老王V2 2024-8-09 工控老王)// 功能解释:// 对数组进行处理,根据不同功能的按钮,输出排序(从小到大,从大到小)、最大值、最小值、均匀值、中位值ArrayLength := SIZEOF(InputArray) / 4;FOR I := 1 TO UINT_TO_INT(ArrayLength) DOTempArray := InputArray;END_FORIF SortAscBtn THENFOR I := 1 TO UINT_TO_INT(ArrayLength) - 1 DOFOR J := I + 1 TO UINT_TO_INT(ArrayLength) DOIF TempArray > TempArray[j] THENTemp := TempArray;TempArray := TempArray[j];TempArray[j] := Temp;END_IFEND_FOREND_FORFOR I := 1 TO UINT_TO_INT(ArrayLength) DOSortedAscArray[I] := TempArray[I];END_FOREND_IFIF SortDescBtn THENFOR I := 1 TO UINT_TO_INT(ArrayLength) - 1 DOFOR J := I + 1 TO UINT_TO_INT(ArrayLength) DOIF TempArray[I] < TempArray[J] THENTemp := TempArray[I];TempArray[I] := TempArray[J];TempArray[J] := Temp;END_IFEND_FOREND_FORFOR I := 1 TO UINT_TO_INT(ArrayLength) DOSortedDescArray[I] := TempArray[I];END_FOREND_IFIF MaxBtn THENMaxValue := InputArray[1];FOR I := 2 TO UINT_TO_INT(ArrayLength) DOIF InputArray > MaxValue THENMaxValue := InputArray;END_IFEND_FOREND_IFIF MinBtn THENMinValue := InputArray[1];FOR I := 2 TO UINT_TO_INT(ArrayLength) DOIF InputArray < MinValue THENMinValue := InputArray;END_IFEND_FOREND_IFIF AvgBtn THENSum := 0;FOR I := 1 TO UINT_TO_INT(ArrayLength) DOSum := Sum + InputArray;END_FORAvgValue := Sum / UINT_TO_INT(ArrayLength);END_IFIF MedianBtn THENFOR I := 1 TO UINT_TO_INT(ArrayLength)-1 DOFOR J := I + 1 TO UINT_TO_INT(ArrayLength) DOIF TempArray[I] > TempArray[J] THENTemp := TempArray[I];TempArray[I] := TempArray[J];TempArray[J] := Temp;END_IFEND_FOREND_FORIF UINT_TO_INT(ArrayLength) MOD 2 = 0 THENMedianValue := (TempArray[UINT_TO_INT(ArrayLength) / 2] + TempArray[UINT_TO_INT(ArrayLength) / 2 + 1]) / 2;ELSEMedianValue := TempArray[UINT_TO_INT(ArrayLength) / 2 + 1];END_IFEND_IF3 代码阐明

php数组累加技巧_ST 措辞数组处理

输入与输出:输入包括一个长度为 11 的数组和多少掌握按钮,输出则是处理后的数组或打算值。
(可根据需求修正数组大小,程序中所有的数组变量都须要修正)排序功能:利用大略的冒泡排序法实现排序功能。
最大值和最小值:通过遍历数组实现。
均匀值:累加数组元素后除以数组长度。
中位值:先排序,再根据数组长度判断取中间值或中间两个值的均匀。
拓展:用户可以根据自己的情形,只须要大略地修处死式就可以实现不同数组大小的数组剖析。

php数组累加技巧_ST 措辞数组处理
(图片来自网络侵删)

程序运行展示

输入

输出4 运用处景该功能块适用于工业自动扮装备的实时数据处理,如生产线传感器数据的剖析、质量掌握中的数据筛选等。
5 开源版本解释该程序遵照开源原则,任何人都可以利用、修正和分发此代码。
在利用前应进行充分的测试,修正代码时,请秉持分享精神,将您的改进和成果进行分享,以便更多人受益。
总结通过 PM_ArrayProcessing_v2 功能块,用户可以高效地处理和剖析数据。
其设计大略易懂,适宜快速集成到各种工业掌握系统中,极大地提高了数据处理的自动化程度和效率。

PLC 数组处理难?看这一篇就够了

http://bbs.plcjs.com/forum.php?mod=viewthread&tid=499829&fromuid=42656

(出处: PLC论坛-全力打造可编程掌握器专业技能论坛)

相关文章

房山第一探寻历史文化名区的魅力与发展

房山区,位于北京市西南部,历史悠久,文化底蕴深厚。作为北京市的一个重要组成部分,房山区的发展始终与首都的发展紧密相连。房山区积极推...

Web前端 2025-02-18 阅读1 评论0

手机话费开钻代码数字时代的便捷生活

我们的生活越来越离不开手机。手机话费作为手机使用过程中的重要组成部分,其充值方式也在不断创新。手机话费开钻代码应运而生,为用户提供...

Web前端 2025-02-18 阅读1 评论0

探寻专业奥秘如何查询自己专业的代码

计算机科学已成为当今社会不可或缺的一部分。掌握一门专业代码对于个人发展具有重要意义。面对繁杂的学科体系,如何查询自己专业的代码成为...

Web前端 2025-02-18 阅读1 评论0