c問如何產生1 100範圍內的數

2022-08-01 07:21:30 字數 6155 閱讀 9546

1樓:魔法軟糖

你好,請使用下面的函式來生成。包括不重複的隨機數。

#region rnd隨機整數(指定範圍)

/// 生成一個指定範圍的隨機整數,該隨機數範圍包括最小值和最大值

/// 最小值

/// 最大值

public static int rnd(this int i, int minnum, int maxnum)

/// 生成不大於最大值的隨機非負整數,該隨機數範圍包括最大值

/// 最大值

public static int rnd(this int i, int maxnum)

/// 生成不大於該值的隨機非負整數,該隨機數範圍包括最大值

public static int rnd(this int i)

/// 生成一個指定範圍的隨機整數,且必須整除aliquot,該隨機數範圍包括最小值和最大值

/// 最小值

/// 最大值

public static int rnd(this int i, int minnum, int maxnum, int aliquot)

#endregion

#region rnds多個不重複隨機整數(指定範圍)

/// 產生int個1到max之間的整數陣列。

public static int rnds(this int 個數, int max)

/// 產生一個min到max的陣列,指定int個數(零和負數預設為等於整個區間)。

public static int rnds(this int 個數, int min, int max)

int count = max - min + 1;

if (個數 < 0)

if (個數 > count)

hashsetlist = new hashset();

//個數不到70%可用區間時,用新增法,否則用排除法

if (個數 < (count * 0.7))  else }}

return list.toarray();

} else

//排除個數

int 排除個數 = count - 個數;

for (int x = 1; x <= 排除個數; x++)  else

}return list.toarray();}}

#endregion

#region 隨機小數(指定範圍)

/// 生成和該值位數一致的隨機非負小數,該隨機數範圍包括最大值

public static double rnd(this double d)

string str = d.tostring();

int k = str.indexof(".");

if (k + 1 >= str.length)

string str2 = str.substring(k + 1);

int 位數 = str2.length;

int maxnum = int.parse(str.replace(".", ""));

int i = 系統隨機數.next(0, maxnum + 1);

return 位數.dot1() * i;

}/// 生成隨機非負小數,並指定位數,該隨機數範圍包括最大值

public static double rnd(this double d, int 位數)

string str = d.tostring();

int maxnum = int.parse(str.replace(".", ""));

int i = 系統隨機數.next(0, maxnum + 1);

return 位數.dot1() * i;

}/// 生成和該值位數一致的隨機非負小數,該隨機數範圍包括最小值和最大值

public static double rnd(this double d, double mindou, double maxdou)

string str = d.tostring();

int k = str.indexof(".");

if (k + 1 >= str.length)

string str2 = str.substring(k + 1);

int 位數 = str2.length;

int p10 = 位數.pow10();

mindou = mindou.ceil();

int minnum = (int)(mindou * p10);

int maxnum = (int)(maxdou * p10);

//如果最小值大於最大值,交換之。

if (minnum > maxnum)

int i = 系統隨機數.next(minnum, maxnum + 1);

return 位數.dot1() * i;

}/// 生成隨機非負小數,並指定位數,該隨機數範圍包括最小值和最大值

public static double rnd(this double d, int 位數, double mindou, double maxdou)

int p10 = 位數.pow10();

int minnum = (int)(mindou * p10);

int maxnum = (int)(maxdou * p10);

//如果最小值大於最大值,交換之。

if (minnum > maxnum)

int i = 系統隨機數.next(minnum, maxnum + 1);

return 位數.dot1() * i;

}/// 生成不大於該值的隨機非負小數,該隨機數範圍不包括最大值

public static double rndin(this double i)

/// 生成不大於最大值的隨機非負小數,該隨機數範圍不包括最大值

/// 最大值

public static double rndin(this double i, double maxdou)

/// 生成一個指定範圍的隨機小數,該隨機數範圍不包括最大值

/// 最小值

/// 最大值

public static double rndin(this double i, double mindou,  double maxdou)

return 系統隨機數.nextdouble() * (maxdou - mindou) + mindou;

}/// 產生double(取整)個0到max之間的隨機小數陣列。

public static double rnds(this double 個數, double max)

/// 產生double(取整)個min到max之間的隨機小數陣列。

public static double rnds(this double 個數, double min, double max)

if (個數 < 1)

hashsetlist = new hashset();

for (int x = 0; x < 個數; x++)  else }}

return list.toarray();

}#endregion

2樓:司馬刀劍

random r = new random(); int num = r.nextinteger(1,101); 這樣隨機數才是1-100.那個函式是不包括上限在內的

3樓:聽不清啊

可以用int x=rand()%100+1;

來得到。

c#怎麼實現取1-100之間的隨機數

4樓:匿名使用者

random r = new random();

int num = r.nextinteger(1,101);

這樣隨機數才是1-100.那個函式是不包括上限在內的

5樓:草薙在

new random().nextinteger(1,100)

6樓:匿名使用者

random ui = new random();

int myint = ui.next(1,101);

7樓:努力_蝸牛

random r = new random();

int number = r.nextinteger(1,101);

1-100的隨機數

8樓:愛貓膩老婆子

使用random寫唄..

c#中如何產生一個0~100的隨機數?

9樓:匿名使用者

using system;

class program}

.net c#陣列問題 宣告一個100大小的陣列 隨機插入1-100之間的數,不能重複

10樓:匿名使用者

mylist.count < 100是正確的 while (mylist.count < 100) 這個迴圈是從mylist.

count =0開始的,當mylist.count =100時停止,也就是0-99迴圈了100次,不知道你看明白沒 沒明白就多問哈

11樓:

小於100只會加到99,如果要把100也加上,可以<=,也可以<101

12樓:匿名使用者

int intarr = new int[100];

arraylist mylist = new arraylist();

random rnd = new random();

while (mylist.count < 100)for (int i = 0; i <100; i++)

13樓:

mylist.count < 100是對的。

這**寫的也太沒水準了,呵呵。

14樓:匿名使用者

static void main(string args)}}

for(int j=0;j<10;j++)

}static int product_data()

c#中生成n個(1-100)之間的隨機數???

15樓:憶夢瀟湘

random rnd=new random;

int randoms = new int[1000];

for(int i=0;i<1000;i++)注意:這樣隨機是可能出現重複值的。

16樓:匿名使用者

random rd = new random();

i=rd.next(99);

用c# 隨機產生20個位於1-100之間的數,並且產生的數各不相同

17樓:

寫一個迴圈

定義一個陣列

對每次生成的隨機數和陣列內的值比較,不存在就加到陣列裡

18樓:匿名使用者

random ro=new random(unchecked((int)datetime.now.ticks));

// 方法1:指定隨機數上下限,產生上下限中的隨機整數

string roint=ro.next(1,20).tostring();

response.write("roint="+roint+"

");// 方法2:返回系統時間作為隨機種子的隨機整數

string roint2=ro.next().tostring();

response.write("roint2="+roint2+"

");// 方法3:指定最大值非負隨機整數

string roint3=ro.next(10).tostring();

response.write("roint3="+roint3+"

");// 方法4:生成0.0和1.0之間的隨機數

string rodouble=ro.nextdouble().tostring();

response.write("rodouble="+rodouble+"

");你只需要做20個迴圈,然後參照上面的**,即可寫出!

怎麼用rand函式產生範圍內的數

產生a b範圍內的隨機數 包含a,b a rand b a a rand b a 產生的只是a到b 1,因此可以換成a rand b a 1 來產生a到b.在excel中可以使用randbetween函式。randbetween 返回位於指定的兩個數之間的 一個隨機整數。每次計算工作表專時都將返回一...

有理數範圍的意思是什麼,實數範圍內意思是什麼

有理數是可以寫成兩個整數之比的數,包括整數 有限小數和無限迴圈小數。無理數是無限不迴圈小數。有理數和無理數合稱實數。實數是相對虛數而言的。有理數範圍的意思是什麼,實數範圍內意思是什麼 實數和複數是一對相對的概念,如果你還沒有接觸到複數,那麼你現階段遇到的所有數都是實數。有理數和無理數是一對相對的概念...

excel中如何統計某個範圍內數值出現的次數?例如有一些資料為1 2,2 1,2 8,3 0,5 8,

countifs a1 a1000,0 a1 a1000,5 a1 a1000是範圍,2個範圍要一樣,複數列的話就都選上,比如 a1 h1000。0和5如果包含其中的話,要加上等號,如樓下 sumproduct a1 a1000 0 a1 a1000 5 countif a1 a100,0 coun...