文章目录[隐藏]
去除重复是我们处理数据经常面临的一个问题,我们曾经采用很多方法,参考下面的文章,今天采用排除法取不重复数字。
随机取一定范围内的指定数量不重复数,比如从1-100中随机取30个不重复数字
使用排除法,先初始化范围,然后放到一个数组中,取出一个后,将这个位置的内容删除,那么下次就不会再重复取了,随机取的不是数字,而是位置。
易语言节点删除重复源码
易语言遍历两个数组成员保留不重复数据
易语言教程删除数组中重复成员方法3
易语言教程删除数组中重复成员方法2
易语言教程删除数组中重复成员方法1
取不重复数字源码
.版本 2 .子程序 _计算图形按钮_被单击 .局部变量 数组, 整数型, , "0", 存放两个范围之间的数字 .局部变量 计次变量, 整数型 .局部变量 随机位置, 整数型 ' 接收输入的数值 范围1 = 到数值 (范围1编辑框.内容) 范围2 = 到数值 (范围2编辑框.内容) 数量 = 到数值 (数量编辑框.内容) ' 判断输入的数值是否符合要求 .如果真 (范围1 < 1 或 范围2 < 1 或 数量 < 1) 信息框 (“范围和数量不能小于1!”, #错误图标, “出现错误了”) 返回 () .如果真结束 .如果真 (范围1 > 范围2) 信息框 (“左边范围必须小于等于右边范围!”, #错误图标, “出现错误了”) 返回 () .如果真结束 .如果真 (范围2 - 范围1 + 1 < 数量) 信息框 (“欲取的数量必须小于等于范围数量!”, #错误图标, “出现错误了”) 返回 () .如果真结束 结果编辑框.内容 = “” .计次循环首 (范围2, 计次变量) ' 初始化范围 注:原版的循环次数为“100”,应为错,我(易一艺)将它改为“范围2” 加入成员 (数组, 计次变量) .计次循环尾 () .计次循环首 (数量, 计次变量) ' 要取几个数就循环几次 置随机数种子 () 随机位置 = 取随机数 (范围1, 取数组成员数 (数组)) ' 取出的随机数是数组的成员位置 结果编辑框.内容 = 结果编辑框.内容 + 到文本 (数组 [随机位置]) + “,” 删除成员 (数组, 随机位置, 1) ' 取出后要删除这个成员,下次就不会再取相同的数字了 .计次循环尾 ()