易语言编程 如何用易语言编写列出组合的可能

功能:编辑框1:输入N个数字后,编辑框2:抽取组合的个数,编辑框3列出所有可能,
请具体说明

这里是全部代码,能将不重复的情况全部枚举出来。

.版本 2

.子程序 _按钮1_被单击
.局部变量 备选数据, 文本型, , "0"
.局部变量 组合文本, 文本型, , "0"
.局部变量 组合数量, 整数型
.局部变量 数组下标, 整数型, , "0"
.局部变量 临时文本, 文本型
.局部变量 a, 整数型
.局部变量 是否重复, 逻辑型
.局部变量 遍历完成, 逻辑型

备选数据 = 分割文本 (编辑框1.内容, , )
组合数量 = 到数值 (编辑框2.内容)
重定义数组 (数组下标, 假, 组合数量)
.计次循环首 (组合数量 - 1, a)
数组下标 [a] = 1
.计次循环尾 ()
.判断循环首 (真)
数组下标 [组合数量] = 数组下标 [组合数量] + 1
.变量循环首 (组合数量, 1, -1, a) ' 判断数组是否越界
.如果真 (数组下标 [a] > 取数组成员数 (备选数据))
.如果 (a = 1)
遍历完成 = 真
跳出循环 ()
.否则
数组下标 [a - 1] = 数组下标 [a - 1] + 1
数组下标 [a] = 1
.如果结束

.如果真结束

.变量循环尾 ()
.如果真 (遍历完成 = 真)
跳出循环 ()
.如果真结束
.计次循环首 (组合数量 - 1, a) ' 判断是否重复
.如果真 (数组下标 [a] ≥ 数组下标 [a + 1])
是否重复 = 真
.如果真结束

.计次循环尾 ()
.如果真 (是否重复 = 真)
是否重复 = 假
到循环尾 ()
.如果真结束
临时文本 = “”
.计次循环首 (组合数量, a)
临时文本 = 临时文本 + 备选数据 [数组下标 [a]]
.计次循环尾 ()
编辑框3.加入文本 (临时文本 + #换行符)
.判断循环尾 ()
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-26
使用循环进行遍历组合。
第2个回答  2010-06-26
用循环就可以了。