开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 273|回复: 13
收起左侧

[易语言] 救命。数组中的数字排序。。。。

[复制链接]
结帖率:70% (32/46)
发表于 2025-6-13 04:07:02 | 显示全部楼层 |阅读模式   广东省韶关市
9精币
如题,数据是这样的,文本数组[1]="76-----随机文本",文本数组[2]=”99-----随机文本2“,文本数组[N]=”XX-----随机文本N“,把所有的数组成员,前面的数字排序,从高到底,取第一个,需要怎么写呢?谢谢,还有,精易论坛真的非常好,我N年前就发帖求助,一直都有高手回帖,,,可惜自己一直是菜鸟,,不知道何时才能回贴帮助一下菜鸟,,


回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳

签到天数: 2 天

发表于 2025-6-13 06:29:32 | 显示全部楼层   海南省白沙黎族自治县
https://bbs.125.la/forum.php?mod=viewthread&tid=14857557  这个里面有一个例子源码,源码里有两个整数型按大或按小排序的函数,你拿去改成文本型就可以了,数组就用 数组_合并 ()这个来合一下

补充内容 (2025-6-13 06:34):
或者试试  数组_排序 () ?

补充内容 (2025-6-13 07:00):
混合型的单维数组排序发了,但是在审核,你等等回贴
回复

使用道具 举报

签到天数: 2 天

发表于 2025-6-13 07:00:09 | 显示全部楼层   海南省白沙黎族自治县
局_数组 = { “50----文字一”, “12----程序集”, “30----子程序”, “1我----被单击”, “8----看看”, “60----测试”, “01----依旧” }
[06:58:31] * Windows 10
[06:58:32] * “01----依旧”
[06:58:32] * “1我----被单击”
[06:58:32] * “8----看看”
[06:58:32] * “12----程序集”
[06:58:32] * “30----子程序”
[06:58:32] * “50----文字一”
[06:58:32] * “60----测试”
[06:58:36] 被调试易程序运行完毕


代码是之前找AI写各种规则排序法的时候让AI写的,刚才拿来测了一下,你可以拿去多测一下
  
子程序名返回值类型公开备 注
混合型排序  
参数名类 型参考可空数组备 注
数组文本型
升序逻辑型默认为真  从小到大
变量名类 型静态数组备 注
i整数型 
j整数型 
临时文本型 
比较结果整数型 
如果真 (是否为空 (升序))
升序 = 真
计次循环首 (取数组成员数 (数组) - 1, i)
计次循环首 (取数组成员数 (数组) - i, j)
比较结果 = 混合型比较 (数组 [j], 数组 [j + 1])
如果真 (升序 比较结果 > 0 取反 (升序) 比较结果 < 0)
临时 = 数组 [j]
数组 [j] = 数组 [j + 1]
数组 [j + 1] = 临时

计次循环尾 ()
计次循环尾 ()
子程序名返回值类型公开备 注
混合型比较整数型 
参数名类 型参考可空数组备 注
文本1文本型
文本2文本型
变量名类 型静态数组备 注
i整数型 
len1整数型 
len2整数型 
类型1整数型 
类型2整数型 
数字值1整数型 
数字值2整数型 
数字结束位置1整数型 
数字结束位置2整数型 
len1 = 取文本长度 (文本1)
len2 = 取文本长度 (文本2)
i = 1
判断循环首 (i ≤ len1 i ≤ len2)
如果 (是否为数字 (取文本中间 (文本1, i, 1)) 是否为数字 (取文本中间 (文本2, i, 1)))
数字值1 = 提取数字 (文本1, i, 数字结束位置1)
数字值2 = 提取数字 (文本2, i, 数字结束位置2)
如果真 (数字值1 ≠ 数字值2)
返回 (数字值1 - 数字值2)

i = 数字结束位置1
类型1 = 取字符类型 (取代码 (取文本中间 (文本1, i, 1), ))
类型2 = 取字符类型 (取代码 (取文本中间 (文本2, i, 1), ))
如果真 (类型1 ≠ 类型2)
返回 (类型1 - 类型2)

如果真 (取代码 (取文本中间 (文本1, i, 1), )取代码 (取文本中间 (文本2, i, 1), ))
返回 (取代码 (取文本中间 (文本1, i, 1), )取代码 (取文本中间 (文本2, i, 1), ))

i = i + 1

判断循环尾 ()
返回 (len1 - len2)
子程序名返回值类型公开备 注
提取数字整数型 
参数名类 型参考可空数组备 注
文本文本型
起始位置整数型
结束位置整数型
变量名类 型静态数组备 注
数字文本文本型 
i整数型 
i = 起始位置
判断循环首 (i ≤ 取文本长度 (文本))
如果 (是否为数字 (取文本中间 (文本, i, 1)))
数字文本 = 数字文本 + 取文本中间 (文本, i, 1)
跳出循环 ()
i = i + 1
判断循环尾 ()
结束位置 = i
返回 (到整数 (数字文本))
子程序名返回值类型公开备 注
是否为数字逻辑型 
参数名类 型参考可空数组备 注
字符文本型
变量名类 型静态数组备 注
字符代码整数型 
字符代码 = 取代码 (字符, )
返回 (字符代码 ≥ 48 字符代码 ≤ 57)
子程序名返回值类型公开备 注
取字符类型整数型 
参数名类 型参考可空数组备 注
字符代码整数型
如果真 (字符代码 ≥ 48 字符代码 ≤ 57)  ' 数字
返回 (1)
如果真 (字符代码 ≥ 97 字符代码 ≤ 122)  ' 小写字母
返回 (2)
如果真 (字符代码 ≥ 65 字符代码 ≤ 90)  ' 大写字母
返回 (3)
返回 (4)

点评

这个是对比的方法,   广东省韶关市  发表于 2025-6-14 02:45
回复

使用道具 举报

签到天数: 2 天

发表于 2025-6-13 07:05:37 | 显示全部楼层   海南省白沙黎族自治县
[JavaScript] 纯文本查看 复制代码
局_数组 = { “50----文字一”, “12----程序集”, “30----子程序”, “1我----被单击”, “8----看看”, “60----测试”, “01----依旧” }


[06:58:31] * Windows 10
[06:58:32] * “01----依旧”
[06:58:32] * “1我----被单击”
[06:58:32] * “8----看看”
[06:58:32] * “12----程序集”
[06:58:32] * “30----子程序”
[06:58:32] * “50----文字一”
[06:58:32] * “60----测试”
[06:58:36] 被调试易程序运行完毕

代码在审核,你等等
回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 3 天

发表于 2025-6-13 09:11:14 | 显示全部楼层   河南省郑州市
  
子程序名返回值类型公开备 注
__启动窗口_创建完毕  
变量名类 型静态数组备 注
文本数组文本型0
结果文本文本型 
i整数型 
txt文本型 
' 生成测试用数据
置随机数种子 ()
计次循环首 (10, i)
加入成员 (文本数组, 到文本 (取随机数 (1, 99)) + “-----”文本_取随机汉字 (5, )到文本 (i))
计次循环尾 ()
调试输出 (文本数组)
' 开始处理
txt = 数组_合并 (文本数组, #换行符 )
结果文本 = 文本_分割文本排序_快速 (txt, , “-----”, 1, 2, 假, )
调试输出 (结果文本)


i支持库列表   支持库注释   
spec特殊功能支持库

点评

哥们,文本_分割文本排序_快速,这个命令是来自哪个模块的?   广东省韶关市  发表于 2025-6-14 03:01
哥们,你这个方法也非常,但是你的精币超级超级多。。。。所以。。。   广东省韶关市  发表于 2025-6-14 02:57
这个是全部加入数组,再对比。。   广东省韶关市  发表于 2025-6-14 02:45
回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 2 天

发表于 2025-6-13 12:30:32 | 显示全部楼层   北京市北京市
精易模块,数组排序1(数组)

点评

已经忘记有这个命令了。。。   广东省韶关市  发表于 2025-6-14 02:57
回复

使用道具 举报

签到天数: 2 天

发表于 2025-6-14 09:11:24 | 显示全部楼层   海南省白沙黎族自治县
华武 发表于 2025-6-13 07:00
局_数组 = { “50----文字一”, “12----程序集”, “30----子程序”, “1我----被单击”, “8----看看”, ...

没听明白你的意思,你不是要把数组里带有数字的文本进行按大排序后,取第一个吗? 代码不是可以帮你把数组按大/按小排序了吗?排完  文本数组[1] 不就是你想要的最大的那个了吗?

补充内容 (2025-6-14 09:14):
afu45 的方法更简单,就是精易模块里面集成了一个和我上面的类似排序代码,afu45自己写的,直接调用进行排序后取第一个,或者你没有讲清楚?
回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 3 天

发表于 2025-6-14 15:15:24 | 显示全部楼层   河南省郑州市
文本_分割文本排序_快速() 精易模块
https://ec.125.la/
回复

使用道具 举报

签到天数: 3 天

发表于 2025-6-15 21:18:29 | 显示全部楼层   广东省佛山市
数组_排序 () ?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表