易语言对一串数字进行大小排列

今天在酷Q论坛看到这样一帖子

image.png

这说白了就是对一串数据进行排序,我们先摈弃这个配置文件不谈,今天就来说一说怎么把一串数据进行排序。

听着挺简单,但是当我实际开始写的时候,直接被难住了。。因为我一点思路都没有,后来经过一番百度,终于摸清了实现的方法。

学术交流会@凡科快图.png

我们假设这里有一串数字,我们要求他可与从大到小排列和从小到大排列,我设计了一个窗口

image.png

我们要实现在编辑框内输入一串数字,然后让他实现从大到小排列排列:

image.png
image.png

也可以实现从小到大排列

image.png

我们在窗口程序及内创建一个子程序:整数排列 BASIC

.版本 2

.子程序 整数排列
.参数 大小排列, 逻辑型
.局部变量 计次, 整数型
.局部变量 分割的数字, 整数型, , "0"

清除数组 (分割的数字)  ' 先把数组归零以清除上次的数据
.计次循环首 (取文本长度 (编辑框1.内容), 计次)  ' 计次循环来加入数据
    加入成员 (分割的数字, 到数值 (取文本中间 (编辑框1.内容, 计次, 1)))  ' 把文本数字分割并存入数组
.计次循环尾 ()
编辑框1.内容 = “”  ' 将编辑框内的内容清空
.判断开始 (大小排列 = 真)  ' 判断排列方式
    数组排序 (分割的数字, 假)  ' 排序
.默认
    数组排序 (分割的数字, )  ' 也是排序
.判断结束

.计次循环首 (取数组成员数 (分割的数字), 计次)  ' 计次来向编辑框内加入文本
    编辑框1.内容 = 编辑框1.内容 + 到文本 (分割的数字 [计次])  ' 显示
.计次循环尾 ()
image.png

我已经在每一行都做了注释,因为我实在不知道这代码该如何解释,就是一个把编辑框内的文本转变为一个个的整数然后加入到数组,再用数组排序这个函数把数组内的成员排序,然后逐个显示到编辑框中。

回到刚刚那个问题上来,我们可以用计次循环逐个将每个账号下的数据读取出来,然后用上述方法进行排序(只不过第一步要改改,直接把所有数据加入数组即可) BASIC

.版本 2

.局部变量 数组, 文本型, , "0"
.局部变量 计次, 整数型
.局部变量 分割的数字, 整数型, , "0"

数组 = 取配置节名 (“目录\配置.ini”)
.计次循环首 (取数组成员数 (数组), 计次)
    加入成员 (分割的数字, 读配置项 (“目录\配置.ini”, “配置节”, 数组 [计次], 0))
.计次循环尾 ()
image.png
© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容