易语言如何取不重复随机数
来源:网络收集 点击: 时间:2024-02-23软件原理与思路:以取N~M之间的X个不重复随机数为例。
将N~M之间的整数按顺序存放于一个数组中,则数组的下标为1~M-N+1,利用取随机数(,)命令取这中间的随机数,取出对应数组中的数字,然后删除该数组成员,依次执行X次,即可取出X个不重复随机数。

第一步:打开易语言软件,创建一个易语言桌面程序。
双击易语言图标,打开易语言程序,点击右上角程序→新建→Windows桌面程序→确认,或者直接点击新建图标→Windows桌面程序→确认,创建一个桌面程序。
本程序的取值范围和取值数量由用户从编辑框输入,先自定义两个整数数组进行存放取值范围和取值结果,自定义三个程序集整数变量用于存放初始数值、结束数值和数量,此外启动窗口创建完毕后,置随机数种子,为了界面好看可以写一条“XP风格(2)”命令。


第二步:绘制一个如图界面。
启动窗口:尺寸为520px*230px,标题改为“易语言取不重复随机数”;
分组框:用来存放标签和编辑框,整体美观协调;
编辑框:创建四个编辑框,前三个设置尺寸为64*32,对齐方式为居中,输入方式为整数文本输入,用来输入取值范围和数量,第四个编辑框用来显示结果;
按钮:点击读取取值范围和数量,并显示取值结果;
选择框:用以显示结果时是否按顺序显示。

第三步:判断输入的取值范围并初始化数组
点击取不重复随机数按钮,进入代码区。依次判断编辑框是否为空,如果为空,信息框提示并返回,如果不为空,继续判断结束数值是否大于初始数值以及数量是否大于取值范围里的数量,如果为否则返回重新输入,为真则继续初始化数组,并开始执行各个子程序。


第四步:生成数组。
获取取值范围之后,利用计次循环把数值依次存放在初始数组中。代码比较简单,如下图。

第五步:从初始数组中取不重复随机数并存放结果数组中。
利用计次循环从初始数组中随机取数,取出后存放于结果数组中,并删除取出数所在的成员,再重新取数,直到取出所需数量的数值。注意,取随机数的取值范围千万不要出错,否则会出错。

第六步:结果显示。
首先清空所存放结果的编辑框,然后判断是否按顺序显示,最后利用计次循环首依次把结果输出到编辑框中,以“,”为间隔符。至此程序编写完成,运行调试。



本程序为了展示其原理写的并不紧凑,如经常使用此程序,可以精简程序封装到自定义DLL或者模块中,方便以后调用
如果这条经验帮到了您,请您为它点赞并投票,让它帮助更多需要的人,谢谢
易语言随机数不重复随机数抽奖数组版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_126698.html