精易论坛

标题: 数组处理,数学太差搞不定,求大佬帮我弄下 [打印本页]

作者: 劫祗o    时间: 昨天 04:29
标题: 数组处理,数学太差搞不定,求大佬帮我弄下
易语言
1,3,4,5,6|2,5,7,9,10|1,2,3,4,5,6,7,8,9,10


1,2,3,5,6,7|2,5,7,8|1,2,3,4,6,7,8,9,10

第一组   1,3,4,5,6  +   1,2,3,5,6,7  
第二组    2,5,7,9,10  +     2,5,7,8
第三组1,2,3,4,5,6,7,8,9,10 +  1,2,3,4,6,7,8,9,10

第一组11个数据,有三个选项,第一种选项选4个数,第二个选项选4个数,第三个选项选3个数,如何实现?
第二组9个数据,有三个选项,第一种选项选2个数,第二个选项选4个数,第三个选项选3个数,如何实现?
第三组19个数据,有四个选项,第一种选项选2个数,第二个选项选4个数,第三个选项选3个数,第四个选项选10个数,如何实现?

求大佬帮忙



作者: b0y    时间: 昨天 06:47
- -问题描述就不能清楚一点吗
这2段是文本还是数组  第一段的11个  第二段的9个 第三段的19个都是固定的数量吗   取几个是随机还是无所谓
作者: 山猫啊    时间: 昨天 08:30
都没表达清楚啊  没看懂
作者: Ruang    时间: 昨天 09:09
不太理解
作者: lisher    时间: 昨天 09:35
数学和语文都有点差
作者: 明天自然醒    时间: 昨天 09:49
首先
https://125.confly.eu.org/forum.php?mod ... 14796219&extra=
然后
https://125.confly.eu.org/forum.php?mod ... 14830372&extra=
作者: 劫祗o    时间: 昨天 09:54
b0y 发表于 2025-5-17 06:47
- -问题描述就不能清楚一点吗
这2段是文本还是数组  第一段的11个  第二段的9个 第三段的19个都是固定的数 ...

两段都是文本,  每种选项选几个数要自己能填的
作者: zainex    时间: 昨天 10:57
如果不想 打乱,去掉 打乱数组 :
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
子程序名返回值类型公开备 注
打乱数组  
参数名类 型参考可空数组备 注
数组文本型
变量名类 型静态数组备 注
整数型 
置随机数种子 ()
计次循环首 (取数组成员数 (数组), 数)
交换变量 (数组 [], 数组 [取随机数 (1, 取数组成员数 (数组))])
计次循环尾 ()
子程序名返回值类型公开备 注
取数组内容  
参数名类 型参考可空数组备 注
数组文本型
选项整数型
结果文本型
变量名类 型静态数组备 注
整数型 
数量整数型 
成员文本型 
整数型 
清除数组 (结果)
计次循环首 (取数组成员数 (选项), 数)
数量 = 数量 + 选项 []
如果真 (数量 > 取数组成员数 (数组))
跳出循环 ()
成员 = “”
计次循环首 (选项 [], )
值 = 值 + 1
成员 = 成员 + 数组 []“,”
计次循环尾 ()
加入成员 (结果, 取文本左边 (成员, 取文本长度 (成员) - 1))
计次循环尾 ()
子程序名返回值类型公开备 注
__启动窗口_创建完毕  
变量名类 型静态数组备 注
文本1文本型 
文本2文本型 
数组1文本型0
数组2文本型0
数组3文本型0
数组4文本型0
整数型 
选项整数型0
结果文本型0
文本1 = “1,3,4,5,6|2,5,7,9,10|1,2,3,4,5,6,7,8,9,10”
文本2 = “1,2,3,5,6,7|2,5,7,8|1,2,3,4,6,7,8,9,10”
数组1 = 分割文本 (文本1, “|”, )
数组2 = 分割文本 (文本2, “|”, )
计次循环首 (取数组成员数 (数组1), 数)
加入成员 (数组3, 数组1 []“,” + 数组2 [])
计次循环尾 ()
' 调试输出 (数组3)
选项 = { 4, 4, 3 }
数组4 = 分割文本 (数组3 [1], “,”, )
打乱数组 (数组4)
取数组内容 (数组4, 选项, 结果)
调试输出 (结果)
选项 = { 2, 4, 3 }
数组4 = 分割文本 (数组3 [2], “,”, )
打乱数组 (数组4)
取数组内容 (数组4, 选项, 结果)
调试输出 (结果)
选项 = { 2, 4, 3, 10 }
数组4 = 分割文本 (数组3 [3], “,”, )
打乱数组 (数组4)
取数组内容 (数组4, 选项, 结果)
调试输出 (结果)


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


作者: geren    时间: 昨天 15:03
本来想用二维数组实现,但是易语言中的二维数组有点特别。改用自定义数据类型,来实现。
  
数据类型名公开备 注
自_选项 
成员名类 型传址数组备 注
选项数据整数型 1
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
子程序名返回值类型公开备 注
__启动窗口_创建完毕  
子程序1 ()
子程序名返回值类型公开备 注
子程序1  
变量名类 型静态数组备 注
组1自_选项0
组2自_选项0
组3自_选项0
i整数型 
临时数组整数型0
' 第一组   1,3,4,5,6  +   1,2,3,5,6,7
' 第二组    2,5,7,9,10  +     2,5,7,8
' 第三组1,2,3,4,5,6,7,8,9,10 +  1,2,3,4,6,7,8,9,10
' 第一组   1,3,4,5,6  +   1,2,3,5,6,7
临时数组 = { 1, 3, 4, 5, 6, 1, 2, 3, 5, 6, 7 }
' 第一组11个数据,有三个选项,第一种选项选4个数,第二个选项选4个数,第三个选项选3个数,如何实现?
生成总数组 (组1, 临时数组, 4, 4, 3, )
调试输出 (“选项1”, 组1 [1].选项数据, “选项2”, 组1 [2].选项数据, “选项3”, 组1 [3].选项数据)
' 第二组    2,5,7,9,10  +     2,5,7,8
临时数组 = { 2, 5, 7, 9, 10, 4, 4, 3 }
' 第二组9个数据,有三个选项,第一种选项选2个数,第二个选项选4个数,第三个选项选3个数,如何实现?
生成总数组 (组2, 临时数组, 2, 4, 3, )
调试输出 (“选项1”, 组2 [1].选项数据, “选项2”, 组2 [2].选项数据, “选项3”, 组2 [3].选项数据, )
' 第三组1,2,3,4,5,6,7,8,9,10 +  1,2,3,4,6,7,8,9,10
临时数组 = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 1, 2, 3, 4, 6, 7, 8, 9, 10 }
' 第三组19个数据,有四个选项,第一种选项选2个数,第二个选项选4个数,第三个选项选3个数,第四个选项选10个数,如何实现?
生成总数组 (组3, 临时数组, 2, 4, 3, 10)
调试输出 (“选项1”, 组3 [1].选项数据, “选项2”, 组3 [2].选项数据, “选项3”, 组3 [3].选项数据, “选项4”, 组3 [4].选项数据)
子程序名返回值类型公开备 注
生成总数组  
参数名类 型参考可空数组备 注
参数组自_选项接受生成的数组
参数据整数型
选项数1整数型
选项数2整数型
选项数3整数型
选项数4整数型
变量名类 型静态数组备 注
局_总数整数型 
局_临时数组自_选项 
j整数型 
k整数型 
如果 (是否为空 (选项数4))
局_总数 = 3

局_总数 = 4

计次循环首 (局_总数, j)
判断 (j = 1)
生成选项组 (局_临时数组, 参数据, 选项数1, )
判断 (j = 2)
生成选项组 (局_临时数组, 参数据, 选项数2, )
判断 (j = 3)
生成选项组 (局_临时数组, 参数据, 选项数3, )
判断 (j = 4)
生成选项组 (局_临时数组, 参数据, 选项数4, )



加入成员 (参数组, 局_临时数组)
计次循环尾 ()
子程序名返回值类型公开备 注
生成选项组  
参数名类 型参考可空数组备 注
参数组自_选项接受生成的选项素组
参数据整数型
选项数整数型
参起始位置整数型选择从哪个位置开始生成选项
变量名类 型静态数组备 注
i整数型 
清除数组 (参数组.选项数据)
计次循环首 (选项数, i)
加入成员 (参数组.选项数据, 参数据 [i + 参起始位置])
计次循环尾 ()


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







欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4