| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 957 人关注过本帖
标题:小白求助大佬能帮忙提供一个随机生成64位或者66位数字加字母软件
只看楼主 加入收藏
yaoliang117
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2022-9-28
结帖率:0
收藏
已结贴  问题点数:20 回复次数:7 
小白求助大佬能帮忙提供一个随机生成64位或者66位数字加字母软件
本人想做一个小软件能够随机生成64位或者66位数字加小写字母的任意形式组合,例如:e125ee222r22这种类型,中间多少数字或者多少字母不影响,就是需要生成64位或者66位数字加字母组合即可,生成的结果不能重复,最好一次性能生成1000个或者1W个都可以,越多越好,但是不管软件如何重启,生成的结果不能跟之前的有重复的,如果有大佬能帮忙请联系我,谢谢,急求
搜索更多相关主题的帖子: 位数 字母 软件 随机 生成 
2022-09-28 16:47
yaoliang117
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2022-9-28
收藏
得分:0 
麻烦有大佬看到能出手处理一下,谢谢
2022-09-28 16:49
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10609
专家分:43210
注 册:2014-5-20
收藏
得分:7 
K个W个不算多,算法不用太复杂,将0-9和a-z放入数组,随机得一个下标取字符组成字串,重复问题可以排队过虑。
2022-09-28 17:27
yaoliang117
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2022-9-28
收藏
得分:0 
回复 3楼 吹水佬
我是小白,自己不懂这方面,所以想找人帮我设计出来
2022-09-28 17:29
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:7 
但是不管软件如何重启,生成的结果不能跟之前的有重复的
那你用 Windows api 的 CoCreateGuid 吧,位数不足就多弄几个。

说实话,我还没明白你想要什么,需求怪怪的
2022-09-28 17:58
yaoliang117
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2022-9-28
收藏
得分:0 
回复 5楼 rjsp
我需要一个软件,一键能生成64位或者66位数字加字母组合排列的,不会出现重复的编码,软件的界面最好是能够有个选项,选择64位或者是66位就可以了

主要是我不会编程,我想找个大佬帮我做这么个软件,
2022-09-28 18:21
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:7 
回复 6楼 yaoliang117
不重复是啥意思,比如是每次生成5个,都不重复还是说从软件使用算起,一直都不重复

DO IT YOURSELF !
2022-09-29 08:05
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:0 
题意很不清楚

“64位或66位数字加小写字母的任意形式组合” ------ 66位的话,一共有 520万亿亿亿亿亿亿亿亿亿亿亿亿 种组合,至少需要一个 342bits 的整型来存储它。在这么大的范围内验证其随机性的正确性几乎不可能,而且我很难想象什么地方需要这么大的随机数据,比整个宇宙所有粒子数还大 几百万亿亿 倍。

“随机生成” ------ 你这个“随机”有数学定义吗,满足何种分布?均匀分布、伯努利分布、二项分布、柯西分布、泊松分布、费舍尔分布、威布尔分布、……?

“但是不管软件如何重启,生成的结果不能跟之前的有重复的” ------ 这个就更含糊了
a. 保证每一次运行时,本次生成的1万个随机数之间不重复(这个很简单,1万个数量很少,那只要每次生成一个随机数时去已经生成的随机数中找一找,找到就丢弃)
b. 保证每一次运行时,本次生成的随机数与之前运行生成的随机数之间不重复(这个需要将每次运行生成的随机数都保存到同一个文件中,1万个随机数占用420Kbytes。如果你运行的次数很多的话,需要类似于数据库存储的技术)
c. 保证不同机器上每一次运行时,本次生成的随机数与其它机器运行生成的随机数之间不重复
c.1. 如果有能力共享“已生成随机数列表”的话,只要在b的基础上增加访问共享数据的功能,互斥访问数据。
c.2. 如果不能共享“已生成随机数列表”的话,那就要类似CoCreateGuid一样,根据MAC地址、时间等软硬件信息生成时空唯一性序列。但这部分数据肯定就不能保证“随机性”


所以,你提到的这些要求点几乎都无法完成,虽然可能你实际上只是需要一个非常简单的功能。
那不如你直接说出你想做什么吧,比如你可能需要的是一个软件的 注册码,那只要 时空唯一性序列+机器特征码+随机序列+验证码 就行了,不需要66位全部随机,甚至都不需要随机,只要保证无法预测就行了。
收到的鲜花
  • ssl0022022-10-09 15:14 送鲜花  1朵   附言:666
2022-09-29 09:39
快速回复:小白求助大佬能帮忙提供一个随机生成64位或者66位数字加字母软件
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026844 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved