1樓:匿名使用者
int array = ;//按照樓主所說的3個數dictionaryextract = new dictionary();//記錄每個數抽
取的次數
for (int i = 0; i < array.length; i++)
random ran = new random();
listlist = new list();//裝載抽取出來的數for (int i = 0; i < 抽取次數; i++)else}
2樓:匿名使用者
輸入:列表 輸出:隨機元素public t getrandomitem(ilist list){ if (list == null) throw new argumentnullexception("list"); int count = list.
count; if (count == 0) return default(t); int index = new random().next(count); return lis..
c# 有一組數,每個數出現的概率不同,如何從這組數中隨機抽出幾個數,怎麼實現? 15
3樓:匿名使用者
static void main(string args)
////// 獲取若干個不同隨機數字
////// 數字與出現概率的配置
/// 獲取數字個數
///static listgetrandnumlist(dictionarysetting, int num)
return ret;
}///
/// 獲取單個隨機數字
////// 數字與出現概率的配置
///static int getrandnum(dictionarysetting)
random rand = new random();
double r = rand.nextdouble() * total; //取一個隨機數,乘以總概率值,對映到總概率值的區間內
total = 0;
foreach (int key in setting.keys)
}return setting.keys.last(); //返回最後一個數,對應rand.nextdouble()隨機到1.0的情況}
c#中如何從陣列中獲取一個隨機數
4樓:匿名使用者
最簡單的就是用random產生1個隨機數,隨機數的範圍為0~xx.length-1;這樣的話比如陣列是20個數,那麼殘生的隨機數n就在(0~19)之間,然後把n帶進陣列xx[n]就可以取出隨機索引的數了撒~ int xx = new int [3] ;
random r = new random(); int n = r.next(0, xx.length-1);xx[n]就是隨機取出的數
5樓:匿名使用者
通過使用random自動生成一個隨機數,確定陣列的下標,從而活得隨機一個陣列
string item=new string[4] ;
random r = new random();
string fi1 = item[r.next(item.length)];
6樓:匿名使用者
在c#中獲取隨機數有三種方法:
一.random 類random類預設的無參建構函式可以根據當前系統時鐘為種子,進行一系列演算法得出要求範圍內的偽隨機數.view sourceprint?
1 random rd = new random(); 2 int i = rd.next();這種隨機數可以達到一些要求較低的目標,但是如果在高併發的情況下,random類所取到的系統時鐘種子接近甚至完全一樣,就很有可能出現重複,這裡用迴圈來舉例view sourceprint? 1for (int i = 0; i < 10; i++) 2這個例子會輸出10個相同的"隨機數".
突顯出的問題:因為random進行偽隨機數的演算法是固定的,所以根據同一個種子計算出的數字必然是一樣的.而以當代計算機的執行速度,該迴圈幾乎是在瞬間完成的,種子一致,所以會出現10次迴圈輸出同一隨機數的情況.
二.guid 類system.guidguid (globally unique identifier) 全球唯一識別符號guid的計算使用到了很多在本機可取到的數字,如硬體的id碼,當前時間等.
所計算出的128位整數(16位元組)可以接近唯一的輸出.view sourceprint? 1 console.
writeline(guid.newguid().tostring());
計算結果是******xx-***x-***x-***x-************結構的16進位制數字.
三.rngcryptoserviceprovider 類system.security.
cryptography.rngcryptoserviceprovider rngcryptoserviceprovider 使用加密服務提供程式 (csp) 提供的實現來實現加密隨機數生成器 (rng)view sourceprint? 1rngcryptoserviceprovider csp = new rngcryptoserviceprovider(); 2byte bytecsp = new byte[10]; 3csp.
getbytes(bytecsp); 4console.writeline(bitconverter.tostring(bytecsp));因該類使用更嚴密的演算法.
所以即使如下放在迴圈中,所計算出的隨機數也是不同的.view sourceprint? 1for (int i = 0; i < 10; i++) 2view sourceprint?
1但是rngcryptoserviceprovider的計算較為繁瑣,在迴圈中使用會消耗造成大量的系統資源開銷,使用時需注意.
四.membership.generatepassword()membership是一個方便快捷的進行角色許可權管理的類,偶然發現一個很有意思的方法,跟隨機數也擦點邊吧view sourceprint?
01public static string generatepassword(int length, int numberofnonalphanumericcharacters); 02// 03// 摘要: 04// 生成指定長度的隨機密碼。 05// 06// 引數:
07// numberofnonalphanumericcharacters: 08// 生成的密碼中的標點字元數。 09// 10// length:
11// 生成的密碼的字元數。長度必須介於 1 和 128 個字元之間。 12// 13// 返回結果:
14// 指定長度的隨機密碼。
例:view sourceprint? 1for (int i = 0; i < 10; i++) 2
7樓:匿名使用者
int xx = new int[3] ;
int x;
random r = new random();
x = r.next(4, 6);
在c#中,怎樣利用random從指定的幾個數字中隨機取出某個數字
8樓:乁
先把你的那
copy些數字放在一個陣列或集合中,然後隨機產生下標比如你的數是: 2 5 8 9 4int numbers = ;
int index = random.next(0,5);
console.write(numbers[index]);
9樓:無毒歐陽鋒
random r=new random();
arrylist intarr=new arrylist();
arrylist.add(1);
arrylist.add(2);
arrylist.add(3);
arrylist.add(4);
return intarr(r.next(0,3));
手寫bai的,可du能有zhi
誤,dao大概就這內意容思
10樓:匿名使用者
先把你那指定的幾個數字放在一個陣列中,隨機出改陣列的索引號,然後根據所以號得到他的值
如果你那指定的幾個數字的個數是會變動的,那就用動態陣列,不明白在來問
c# 有一組數,每個數出現的概率不同,如何從這組數中隨機抽出幾個數,怎麼實現? 30
11樓:匿名使用者
1、按機率生成一個 int[100]的陣列,陣列裡1有1個,2有4個,3有5個,4有10個。。。按你的機率類推。
2、用random類生成0到99的數來取陣列的值。
3、如有生成重複的就放棄重來。
c#如何從一個列表裡取一個隨機數?
12樓:匿名使用者
輸入:列表 輸出:隨機元素
public t getrandomitem(ilistlist)sh
13樓:匿名使用者
random物件就是生成隨機數的!
c#中怎麼將一堆數字中,隨機出一個 50
c#怎麼在list集合中隨機取出一個值
14樓:小唯殿
剛剛有個人說的對,但是有些籠統
random rm = new random();
int i = rm.next(list.count) //隨機數最大值不能超過list的總數
list[i];
這樣就可以,
內當然,省下來
容i其實也可以
15樓:匿名使用者
用random定義一個隨機數,然後list[隨機數]。
matlab如何在一組陣列中隨機抽取數
s 1 3 5 7 9 陣列 n length s 陣列長度 i ceil rand 1,1 n s i 我的建議是先得到你陣列的大小a,然後產生個從1到a的隨機數,這專樣也能取出 屬來一個數。clc y 1,8,6,8,4,2,9,2,4,7,3,8,4,2,9,3,4,9,3 a size y,...
c從陣列中隨機抽取出一組資料,該怎麼處理
random rnd new random int array new int int newarray array.orderby i rnd.nextdouble take 5 toarray 你要取多 少資料,就把這行的5改成多少 c 中如何從陣列中獲取一個隨機數 最簡單的就是用random產...
excel中如何統計一組數字中重複數字的次數
你的問題不是很明確哦 首先 你得說明你這組數字存在的形式 比如 同一行 每個數字一個單元格 或同一列 每個數字一個單元格 再或 這組數字都在同一單元格內 連續的字串形式的 還是字元之間有空格 等等 在統計過程中對運用的公式影響很大的 再有 標題問的是重複數字出現的次數吧 可是下面你給出的說明中 給人...