1000 줄의 난수를 공백으로 구분하여 파일을 만들려고합니다. 이것은 단지 로또 기계의 숫자를 시뮬레이션하는 것입니다. 나는 6 int 배열에 6 개의 숫자의 조합을 처리 할 클래스를 만든다.부울의 클래스 속성을 설정/가져 오기가 작동하지 않습니다.
class cTicket
{
//Propiedades
private volatile int[] p_nums;
//Constructor
public cTicket()
{
}
//Metodos
public void setTicket(int[] o_nums)
{
p_nums = o_nums;
}
public int[] getTicket()
{
return p_nums;
}
}
나는 무작위 방식으로 선택된 6 개의 숫자 배열로 1000 개의 라인을 조합해야한다고 말했듯이. 그래서 코드의 어떤 부분에서 다음과 같은 것을 얻었습니다 :
private void button2_Click(object sender, EventArgs e)
{
for (int i = 0; i < 1000; i++) // Bucle de 1,000 combinaciones
{
objTicket.setTicket(objGenerador.generaNumero());
//MessageBox.Show(integerArrayString(objTicket.getTicket()));
write.WriteLine(i + integerArrayString(objTicket.getTicket()));
}
write.Close(); // Cierra operacion de escritura del archivo
}
그러나이 부분은 전혀 작동하지 않습니다. 그것은 6 개의 숫자의 동일한 조합을 반복해서 반복합니다. 전체 프로세스의 세 번처럼 변경하면 메시지 상자에 출력을 넣으면 완벽하게 작동한다는 것입니다. 하지만 파일에 쓰려고 할 때가 아닙니다.
누군가가 내 문제를 도울 수 있기를 바랍니다.
감사합니다.
안녕하세요, 아래 게시물을 읽고 더 많은 문서를 얻은 후 다시 고마워합니다. 제가 문제의 씨앗을 얻었고, 당신이 말하는 것처럼 램덤 번호를 생성하는 방법이었습니다.
공개 INT [] generaNumero() { 내가 intance 수행 하였다 선 제거
Random obj = new Random();
int v_idx;
for (int x = 0; x < 6; x++)
{
v_idx = x;
v_array[x] = obj.Next(1, 38);
while (v_idx >= 0)
{
if (v_array[x] == v_array[v_idx])
{
v_array[x] = obj.Next(1, 38);
v_idx = x;
}
v_idx--;
}
}
return v_array;
I 단순한 "임의 OBJ = 새로운 랜덤();" 이 방법 및 그것의 완벽한 지금 일에서.
감사합니다.
난수 생성기는 의사 값을 사용하여 의사 난수를 생성합니다. 씨앗을 바꾸지 않으면 같은 목록을 얻을 수 있습니다. MSDN - [임의 클래스] (http://msdn.microsoft.com/en-us/library/system.random.aspx)의 비고 섹션을 참조하십시오. – Tim
야생 추측 :'generaNumero'에서'Random' 클래스를 만듭니다. 방법. 그것을 objGenerador'의 생성자로 옮겨보십시오. http://stackoverflow.com/questions/767999/random-number-generator-only-generating-one-random-number – I4V