- 已加入
- 9/29/06
- 訊息
- 74
- 互動分數
- 0
- 點數
- 0
- 年齡
- 42
我說明一下~~~
這是JAVAㄉ!!
大致上就是1~49個號碼選8個號碼進行組合排列~~~
也就是8C6~~~
可以幫我改一下8C6嗎!?
且是自己任選8個號碼~~~~
P.S
怕丟作業上來而被關~~~
只好丟某個範例檔案!!
希望有好心的高手幫忙解題嚕
我是JAVA初學者
C語言學過6個月~~
滄者就差程式語言版不然就更完美!!如有觸犯條文請先告知我後再坎文吧!!當然希望別砍@@"
這是JAVAㄉ!!
大致上就是1~49個號碼選8個號碼進行組合排列~~~
也就是8C6~~~
可以幫我改一下8C6嗎!?
且是自己任選8個號碼~~~~
P.S
怕丟作業上來而被關~~~
只好丟某個範例檔案!!
希望有好心的高手幫忙解題嚕
我是JAVA初學者
C語言學過6個月~~
滄者就差程式語言版不然就更完美!!如有觸犯條文請先告知我後再坎文吧!!當然希望別砍@@"
代碼:
//程式碼開始//
public class NofM
{
private int m;
private int[] set;
private boolean first;
private int position;
public NofM(int n, int m)
{
this.m = m;
first = true;
position = n - 1;
set = new int[n];
for(int i = 0; i < n; i++)
set[i] = i + 1;
}
public boolean hasNext()
{
return set[0] < m - set.length + 1;
}
public int[] next()
{
if(first)
{
first = false;
return set;
}
if(set[set.length-1] == m)
position--;
else
position = set.length - 1;
set[position]++; // 調整右邊元素
for(int i = position + 1; i < set.length; i++)
set[i] = set[i-1] + 1;
return set;
}
public static void main(String[] args)
{
NofM nOfm = new NofM(6, 49);
while(nOfm.hasNext())
{
int[] set = nOfm.next();
for(int i = 0; i < set.length; i++)
{
System.out.print(set[i]);
}
System.out.println();
}
}
}
//程式碼結束//