1到8随机数生成器(1到10随机数生成器)
大家好!今天让创意岭的小编来大家介绍下关于1到8随机数生成器的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。
开始之前先推荐一个非常厉害的Ai人工智能工具,一键生成原创文章、方案、文案、工作计划、工作报告、论文、代码、作文、做题和对话答疑等等
只需要输入关键词,就能返回你想要的内容,有小程序、在线网页版、PC客户端和批量生成器
本文目录:
C#写取8个互不相等的随机数
static void Main(string[] args){
//创建随机数生成器
Random ran = new Random();
//8个a
int[] a = new int[8] { 1, 2, 3, 4, 5, 6, 7, 8 };
//8个b
int[] b = new int[8];
//生成b的值
for (int i = 0; i < b.Length; ++i)
{
//取1-8随机数
b[i] = ran.Next(1, 9);
//如果与对应a相等
if (b[i] == a[i])
{
--i;
}
}
//输出a和b的值
for (int i = 0; i < b.Length; ++i)
{
Console.WriteLine("a[{0}] = {1},tb[{0}] = {2}", i, a[i], b[i]);
}
}
如果满意就请采纳哈
追答没有b[8]
数组下标是从0开始的只有 b[0] - b[7]
哦 但是为什么b中有元素重复?
我希望让所有的b都互不相等
谢谢了~
b[i] = ran.Next(1, 9);
//如果与对应a相等
if (b[i] == a[i])
{
--i;
}
//在与自身比较
for (int j = 0; j < b.Length; ++j)
{
//不与自身做比较
if (j != i)
{
//与其他元素依次做比较
if (b[i] == b[j])
{
--i;
break;
}
}
}
完整代码太长不能赋值过来,就你给for循环里面的代码,就改了那个地方
追问b没有重复了,但是这一次b中却有元素出现了等于0的情况是怎么回事?
而且b1恒等于0?
不会吧随机数是 1-8怎么会出现0呢
java如何产生1-8的整数随机数?
在java中,生成随机数使用的是Random类。要生成在[min,max]之间的随机整数,则可以如下:import java.util.Random;
public class RandomTest {
public static void main(String[] args) {
int max = 8;
int min = 1;
Random random = new Random();
int s = random.nextInt(max)%(max-min+1) + min;
System.out.println(s);
}
}
其中,random.nextInt(max)表示生成[0,max]之间的随机数,然后对(max-min+1)取模。
以上就是关于1到8随机数生成器相关问题的回答。希望能帮到你,如有更多相关问题,您也可以联系我们的客服进行咨询,客服也会为您讲解更多精彩的知识和内容。
推荐阅读: