Shell 脚本生成不重复的随机数
#!/bin/bash
#AUTHOR:AN
#DATE:2019-3-24
#Describe:Generate No-Repeat Random-Number
#Method:如生成3~7的随机数,先生成0~4(7-3)的随机数,再加上3(起始值)来修正
######################################################################
echo "产生不重复的随机正整数!!!"
read -p "输入随机数范围的起始值:" Start_Num
read -p "输入随机数范围的结束值:" End_Num
#控制数组的长度,且用于RANDOM的被余数
Array_Length=$[End_Num-Start_Num+1]
#定义数组,用来存储最终生成的随机数
typeset RAND
#循环生成$Array_Length个随机数
for ((i=0;i<$Array_Length;i++))doRnum=$[RANDOM%$Array_Length+Start_Num]#提取数组的长度Length=${#RAND[@]}#双if语句思路:先给数组赋第一个值,然后拿后面生成的随机数依次与数组的元素进行对比#如果相同重新产生一个随机数,如果不同则存入数组if [ $Length -eq 0 ];thenRAND[$i]=$Rnumelsefor ((j=0;j<$Length;j++))doif [ $Rnum != ${RAND[$j]} ];thencontinueelseRnum=$[RANDOM%$Array_Length+Start_Num]j=-1fidoneRAND[$i]=$Rnumfi
done
#输出数组的值
for ((x=0;x<$Array_Length;x++))doecho ${RAND[$x]}
done
Shell 脚本生成不重复的随机数相关推荐
- Linux中使用shell脚本生成随机数
Linux中使用shell脚本生成随机数 1.主体思想: 为了实现随机数的随机性,所以在这里借用date中的%s%N可以输出从1970年1月1日00:00:00到目前经历的秒数,从而产生变化的数字,再 ...
- shell脚本生成双色球号码
shell脚本生成双色球号码 双色球号码生成规则 shell脚本实现 shell运行结果展示 双色球号码生成规则 1.第七条"双色球"每注投注号码由6个红色球号码和1个蓝色球号码组 ...
- .net中如何生成不重复的随机数
2019独角兽企业重金招聘Python工程师标准>>> .net中生成不重复的随机数的方法 //获取count个不大于maxNumber的整数,所有整数不重复.当然,count必须小 ...
- C#生成不重复的随机数
C#生成不重复的随机数 在做能自动生成试卷的考试系统时,常常需要随机生成一组不重复的题目,在.net Framework中提供了一个专门用来产生随机数 http://www.jbxue.com/tag ...
- php mysql随机数不重复,js生成不重复的随机数
这篇文章主要为大家详细介绍了js生成不重复的随机数,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小编罗X来看看吧. JS代码如下: /** * * @param * ...
- [转载][记录]javascript生成不重复的随机数
参考链接:javascript生成不重复的随机数 项目播放视频,是无序的,有上下两个按钮,所以需要生成1,8不重复的随机数数组,如: 7,4,8,6,1,5,3,2 然后再split一次,就是数组了. ...
- 生成不重复的随机数的三种方法
下面我以生成1-10之间的10个不重复的随机数为例介绍生成不重复的随机数的三种方法: 1,通过while循环来实现 通过while循环不停的生成随机数,直到生成一个不重复的为止,这种方法比较容易想 ...
- python使用random生成不重复的随机数
注:如果直接使用random无法避免生成不重复的随机数,除非使用set,所以换一个思路,在所给的区域的所有数值中选择一定数量的数即可,只要给定的数不存在重复值,那么就不会被选出同样的数. 可根据需求修 ...
- 微课|中学生可以这样学Python(例5.1):生成不重复的随机数
适用教材: 董付国,应根球.<中学生可以这样学Python>.清华大学出版社,2017. 第5章 Python序列及应用 5.1.6 精彩例题分析与解答 例5.1 生成不重复的随机数 ...
最新文章
- Apache配置--用户认证(针对目录访问)-update2015-05-02
- laravel+vue.js的学习以及为什么浏览器中要有井号“#”
- python手机版下载苹果版-Pyto-Python3
- Python3 split()分割和 join()合并
- 【原转】使用获取subview获取子view
- AOP—JVM SandBox—底层原理解析
- Scala _03方法与函数
- 浙大计算机基础知识题1,浙大作业1计算机基础知识题.docx
- 小智伴机器人使用说明_智伴机器人丨史上最全功能,玩转小智伴看这里!
- python 实现两个excel表格数据的对比--代码
- mysql 判断大小_《fantasy系列》高性能mysql(一)
- 高等代数期末考试题库及答案_高等代数3学时试题题目及答案,课程2021最新期末考试题库,章节测验答案...
- 电信sdn虚拟服务器,数据中心SDN网络的构建及通信业务与光纤引入
- 电信光猫-华为HG8245C获取超级管理员密码
- Python小项目(学生成绩管理系统)7.排序、显示部分
- SOEM 源码解析 ecx_LRD
- NYOJ1238 最小换乘
- 从键盘输入50个学生数据,打印出每门课的平均成绩
- ADI-DSP-BF706之CCES操作仿真及烧写程序
- amber分子动力学模拟干货总结
热门文章
- 印象大使_基本服务-使用大使网关
- java 飞行记录器_Java 11功能– Java飞行记录器
- neo4j 添加属性_Neo4j:动态添加属性/设置动态属性
- spring 请求转码_Spring请求级备忘录
- 销毁AWS资源:Cloud-Nuke还是AWS-Nuke?
- 测试Spring Boot有条件的合理方式
- 无需再忙了:Lambda-S3缩略图,由SLAppForge Sigma钉牢!
- java ssl证书_Java安全教程–创建SSL连接和证书的分步指南
- java 语义_Java文件合并变得语义化
- restful web_泽西岛的RESTful Web服务