C有一組數,每個數出現的概率不同,如何從這組數中隨機抽出幾個數,怎麼實現

2021-03-24 02:14:24 字數 3293 閱讀 5205

1樓:匿名使用者

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#從一組數中隨機抽取數字?

2樓:匿名使用者

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}

3樓:匿名使用者

輸入:列表 輸出:隨機元素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#從陣列中隨機抽取出一組資料,該怎麼處理

c# 有一組數,每個數出現的概率不同,如何從這組數中隨機抽出幾個數,怎麼實現? 30

4樓:匿名使用者

1、按機率生成乙個 int[100]的陣列,陣列裡1有1個,2有4個,3有5個,4有10個。。。按你的機率類推。

2、用random類生成0到99的數來取陣列的值。

3、如有生成重複的就放棄重來。

c# 隨機單個三個數作為一組,不重複之前出現的一組資料

5樓:匿名使用者

arraylist al=new arraylist();do}

while(al.contains(你新產生的那組隨機數))

6樓:匿名使用者

listarr = new list();

random rnd = new random(guid.newguid().gethashcode());

string s;

do while (arr.contains(s));

arr.add(s);

c# 一道方法題,n個數隨機排列,有多少中可能?

7樓:為君湯湯

數字不出現重複的話,且n大於1是

可能數是n*(n-1)

在c#中如何程式設計實現為一組數字隨機分組?

8樓:匿名使用者

建立乙個動態陣列,把所有的數字放進這個陣列,生成隨機數,取相應位置的隨機數的位置,取出該位置陣列放入新的組,然後迴圈上一步,直到取光所有的陣列中的數字。

9樓:匿名使用者

建議array的split()函式

c#中怎麼在自己規定輸入的一些數中隨機抽出乙個?

10樓:匿名使用者

什麼叫「自己規定輸入的一些數字」。不理解你這句話的意思。自己輸入或

者規定輸入都通順。兩個合起來就不通順了。如果你的意思是按照一定規定讓使用者自己輸入的話,那還是自己輸入的意思啊。何必搞的那麼複雜呢?我也只能按照這種意思來理解了。

不管使用者按照什麼規定來輸入,輸入的數字最終都要放到乙個儲存變數裡存放,也許是陣列,也許是索引器,等等吧不管是什麼反正都得用個變數負責儲存對吧。我們這裡就以簡單一些的陣列為例吧:

int number = new int;

//假設上面就是使用者按照你的規定輸入的陣列。

random r = new random();//定義乙個隨機數生成器,你要隨機抽取當然要有這個東西。

int ai = r.next(number.length);//隨機獲得乙個數並賦值給變數ai。

//r.next()這個方法就是負責獲得隨機數的方法,它有3個過載,第乙個是沒有引數的,返回結果是乙個非負隨機數;第二個過載是1個引數的也就是這次我們用到的,它的意思是獲得乙個上限為引數值的非負隨機數,這個引數必須大於等於0,但返回值的最大值為引數減一;第三個過載是2個引數的過載,第乙個引數為獲取隨機數的最小邊界值,第二個為獲取隨機數的最大邊界值。

我們取得隨機數的目的是為了讓這個隨機數當做陣列中的下標,這樣取得的陣列中的值就是隨機產生的了。也就是:number[ai] 這個數就是陣列中的隨機引數的數字了。

11樓:匿名使用者

int num = new int ; //定義陣列,可自選修改

int n=new random().next(0,num.length-1);

//如果我沒理解錯誤,你要的應該就是這種了

12樓:匿名使用者

string instr; //輸入的隨機數字串陣列,假設已經輸入。

random rd = new random();

int r = int.parse(instr[rd.next(instr.length)]);

c#中,有乙個二維陣列,怎樣隨機訪問其中的兩個數啊?

13樓:匿名使用者

不是有index嘛~~在長度範圍內隨機取2個值,當座標,用string[a][b]不就好了?

一不同的數,每數一組(每組不能出現重複數字),可以分成多少組

一組三個數,第乙個數12種可能,因為不能重複,第二個數11種可能,第三個數10種可能,猶豫重複的情況,所以是12乘11乘10除3,440。排列組合問題,c3 12,一共220種 用12個數字,每三個數字一組一共有多少組,不能重複 3不包括0的話,就有a12 12 11 10 1320種 c12 3 ...

excel中統計前面不同的兩個數字在一組數中的個數

如圖用輔助列實現 i2公式 輔助列 mid text b2,0.00000000000000e 00 3,1 下拉 j2公式 輔助列 14 len substitute mid text b2,0.00000000000000e 00 3,14 i2,下拉 k2公式 輔助列 mid text b2,...

有倆組數,一組數,和是98,第二組數的平均數是11,兩組數的平均數是8,第二組有多少個數

第二組有x個數 98 11x 16 x 8 98 11x 128 8x 3x 30 x 10 第二組有10個數 列方程很容易,但列算式更有意思 16 8 98 11 8 10 道理是 第一組被第二組平均後總數少了30,是因為第二組每個數平均被減去了3,所以30 3就是第二組的個數。地衣組被第二組平均...