S7-1200 如何对数组进行由大到小排序?

请问,S7-1200 如何对数组进行由大到小排序?实际上我要取出数组里的第二最大和第二最小,请问除了冒泡法还有什么便捷的方法呢?

最佳答案

选择排序法,交换次数比冒泡排序少多了,由于交换所需CPU时间比比较所需的CPU时间多,n值较小时,选择排序比冒泡排序快。百度搜索其定义。
#tempArray := #inArray;
FOR #n := 1 TO 9 DO
    #max := #n;
    FOR #i := #n + 1 TO 10 DO
        //比较查找最大值
        IF #tempArray[#i] > #tempArray[#max] THEN
            #max := #i;
        END_IF;
    END_FOR;
   //交换最大值
   #temp := #tempArray[#n];
   #tempArray[#n] := #tempArray[#max];
   #tempArray[#max] := #temp;
   
END_FOR;

//输出第二大和第二小
#Second_Biggest := #tempArray[2];
#Second_Smallest := #tempArray[9];

//输出排序后数组;
#after := #tempArray;

提问者对于答案的评价:
谢谢

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc155914.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月6日 下午7:33
下一篇 2017年6月6日 下午7:34

相关推荐

  • TIA portal v11

    我使用的v11软件,DB块为什么不能自动添加偏离量呢? 最佳答案 编译一下就可以看到了,在V11中必须编译才可以看到。 提问者对于答案的评价:在你回答之前,我已经摆弄明白了。不过同…

    SIMATIC S7-1200 2017年11月18日
  • S7-1200的秒脉冲是什么

    S7-200的秒脉冲是SM0.5,S7-1200的秒脉冲是什么,我要设置风机运行几秒停几秒,可以调整时间的程序 最佳答案 1、怎样在 STEP 7 (…

    SIMATIC S7-1200 2017年11月4日
  • 请问1200和昆仑触摸屏可以通过PPI通讯吗?

    1200用CM1241和昆仑触摸屏通讯,在屏里可以选择西门子200PPI通讯协议吗?也就是说1200支持PPI吗?如果不支持的话用什么通讯呢?通信线和ppi一样也是3、8连7、8吗…

    SIMATIC S7-1200 2017年8月3日
  • 如何配置Posital Profinet IO编码器

    利用博途来组态Posital编码器,但是GSD文件并没有,这个文件哪里会有 最佳答案 官网肯定会有,可能是德文或英文官网,直接找供应商或者官方电话索取都可以 提问者对于答案的评价:

    SIMATIC S7-1200 2017年6月4日
  • S7-1200定时器修改设定值

    刚开始用S7-1200,发现个问题,当定时器运行过程中,修改PT设定值后,可以看到已经修改成功,可定时器还是按照修改之前的设定值动作,怎么解决?按图所示,定时器第一次设定60S,定…

    SIMATIC S7-1200 2017年6月8日
  • 请教关于1200 MODBUS指令的疑问?

    1、1200的MODBUS主站指令只有“MB_MASTER”。是不是可以认为1200在执行“MB_MASTER”发送指令后,自动转为状态?2、指令“MB_COMM_LOAD”中“R…

    2017年11月1日
  • TIA PortalV12 无法打开帮助文件

    TIA PortalV12 无法打开帮助文件 按F1 不显示帮助信息 问题补充:点击帮助-显示帮助,就是什么反应也没有;xp系统前几天安装还…

    SIMATIC S7-1200 2017年11月6日
  • S7-314与S7-1200智能设备通讯故障导致1200PLC报错 I>HW_ID=272

    你好,一条线有两台机有这个问题,各种办法想尽了都没成效。流程中通讯突然中断。有一台是半天出现一次故障,出现大概几秒钟自己恢复,已做防范,不会报废工件,但连续运行流程中断确实烦人,故…

    2017年5月29日
  • s7-1200的配料称重

    哪位大侠能能提供一下关于s7-1200的配料称重程序共参考,5种料一个累加秤。愿已最高悬赏答谢!邮箱:18959804201@189.cn 最佳答案 称重程序没有,即使有别人编写的…

    2017年6月1日
  • 1200系列PLC DEFECTIVE模式

    有一个项目使用的S7-1200系列1214C PLC,使用了3个月了。今天客户打来电话说PLC处于停止状态(STOP),赶紧让客户监控一下PLC状态。客户电脑上安装的是博…

    2017年6月24日