기금넷 공식사이트 - 복권 조회 - 자바 코스 디자인 복권 번호 생성기

자바 코스 디자인 복권 번호 생성기

나는 콘솔에 슈퍼 복권 코드를 출력했다. 당신을 도울 수 있기를 바랍니다: 1 먼저 생각을 말하다. A. 두 개의 배열과 두 개의 변수 배열을 각각 35 의 전면 영역과 12 의 후면 영역에 배치한다고 선언합니다. 변수는 두 배열의 길이입니다. B. 먼저 전면 5 개 숫자를 무작위로 얻습니다: 무작위. NextInt (앞 영역 길이의 변수) 는 난수를 가져오고 첫 번째 배열에서 아래 첨자가 이 난수인 요소를 찾아 변수에 넣습니다. 이것은 형식을 판단할 수 있다. 정규식으로 숫자 수인지 아닌지를 판단할 수 있다. 그렇다면 0 을 기입하십시오. 그런 다음 배열에서 요소를 제거합니다. 물론 배열을 저장하는 변수는 1 에서 뺀 다음 4 번 반복해야 1-35 에서 5 개의 반복되지 않는 숫자를 얻을 수 있습니다. C. 위와 같습니다. 2. 코드를 첨부하면 매우 즐겁다. Java Java 를 가져옵니다. Util. Arraylist

Java.util.arrays 가져오기

Java.util.list 가져오기

Java.util.random 을 가져옵니다.

Java.util.regex.matcher 를 가져옵니다.

Java.util.regex.pattern 을 가져옵니다. /* *

* 다음은 확률에 따라 엄격하게 생성되는 슈퍼복권 난수 선택 함수의 시뮬레이션입니다.

* @ 저자 잭

*

*/

공개 수업 슈퍼 행복 {

//전면 영역 번호를 저장할 목록을 선언합니다.

개인 배포 목록< 정수 & gtobjfrontlist = new ArrayList & lt 정수> ();

//지역 번호를 저장할 목록을 선언합니다.

개인 배포 목록< 정수 & gtobjBackList = new ArrayList & lt 정수> ();

//출력 유효성 검사에 사용되는 한 자리 일치 여부를 나타내는 정규식 객체를 선언합니다.

Pattern objp = pattern.compile ("\ \ d");

//작동할 문자열

Matcher objM = null

String [] front = new string [5];

String[] Back = 새 문자열 [2]; //복권 번호 초기화

공용 voidinit () {

For (int I =1; 나<= 35; I++) {

Objfrontlist.add (I);

}

For (int I =1; 나<= 12; I++) {

Obj backlist.add (I);

}

}//추첨을 시작하다.

Public void beginLottery() {

Randomobj random = new random ();

Int nFrontCount = 35// 전면 번호 합계

Intnba ckcount =12; //후구 번호 합계//상을 받기 전에 목록을 비우고 초기화합니다.

Objfrontlist.clear ();

//system.out.println (objfrontlist);

Objbacklist.clear ();

//system.out.println (objbacklist);

This.init ();

/* *

* 5 개의 전면 번호를 생성합니다.

*/

For(int I = 0;; 나<5; I++) {

//system.out.println ("nfrontcount:"+nfrontcount);

//처음에는 35 개의 접두사가 있어 무작위로 색인을 생성합니다.

Intnindex = objrandom.nextint (nfrontcount);

//선택한 숫자를 정규식 검증이 있는 변수에 임시로 저장합니다.

Intntemp = objfrontlist.get (nindex);

String strTemp = 새 정수 (nTemp). Tostring ();

//정규식을 사용하여 얻은 숫자 일치

Objm = objp.matcher (strtemp);

부울 플래그 = objm.matches ();

//한 자리라면 0 을 채워야 한다.

(로고) {

Front [I] = ("0"+strtemp+"");

} 그렇지 않으면 {

Front [I] = (strtemp+"");

}

//목록에서 이 인덱스에 있는 숫자를 삭제합니다. 하나를 선택하면 다시 넣지 않기 때문입니다.

Objfrontlist.remove (nindex);

//전체 숫자 수에서 1 을 뺀 값입니다.

Nfrontcount-;

}

Arrays.sort (프런트 엔드);

For(int n = 0;; N & ltFront. 길이; N++) {

System.out.print (front [n]+"\ t");

}

System.out.print ("+");

/* *

* 2 개의 후면 영역 번호를 생성합니다.

*/

For(int I = 0;; 나<2; I++) {

//system.out.println ("nbackcount:"+nbackcount);

//처음에 12 지역 번호가 있어 무작위로 색인을 생성합니다.

Intnindex = objrandom.nextint (nbackcount);

//선택한 숫자를 정규식 검증이 있는 변수에 임시로 저장합니다.

Intntemp = objbacklist.get (nindex);

String strTemp = 새 정수 (nTemp). Tostring ();

//정규식을 사용하여 얻은 숫자 일치

Objm = objp.matcher (strtemp);

부울 플래그 = objm.matches ();

//한 자리라면 0 을 채워야 한다.

(로고) {

Back [I] = ("0"+strtemp+"");

} 그렇지 않으면 {

Back [I] = (strtemp+"");

}

//목록에서 이 인덱스에 있는 숫자를 삭제합니다. 하나를 선택하면 다시 넣지 않기 때문입니다.

Obj backlist.remove (nindex);

///for(int n = 0;; N & ltobjbacklist.size (); N++){

//system.out.println ("objbacklist:"+objbacklist.get (n));

//}

//전체 숫자 수에서 1 을 뺀 값입니다.

Nba ckcount-;

}

Arrays.sort (백);

For(int n = 0;; N & ltBack. 길이; N++) {

System.out.print (back [n]+"\ t");

}

//메모를 하고 차로 돌아가다.

System.out.println ("");

}//요청 시 복권 몇 장을 출력합니까?

Public void output lottery (int vncount) {

For(int I = 0;; 나 & ltvnCounti++) {

This.beginlottery ();

}

}/* *

* @param args

*/

공용 정적 void main(String[] args) {

Super joyful objsj = new super joyful

Enter consoleobjec = new enter console ();

//숫자인지 여부를 일치시키기 위해 정규식 객체를 선언합니다.

Pattern objp = pattern.compile ("\ \ d {1,}");

//작동할 문자열

Matcher objM = null

//콘솔 입력 수신

Stringobjtemp = (string) objec.printconsole ();

//stringstrtemp = (string) objtemp;

Objm = objp.matcher (objtemp);

부울 플래그 = objm.matches ();

Intntemp = 0;

(로고) {

NTemp = 새 정수 (objtemp);

} 그렇지 않으면 {

System.out.println ("죄송합니다. 숫자만 입력할 수 있습니다!" " );

}

Objsj.outputlottery (ntemp);

}

} enterconsole.javaimport java.io.bufferedreader;

Java.io.ioexception 을 가져옵니다.

Java.io.inputstreamreader 가져오기

공용 클래스 입력 콘솔

{

공용 객체 printConsole(){

System.out.print ("임의로 선택할 음표 수를 입력하고 enter 키를 누르십시오.");

Buffered reader objbr = new buffered reader (new input streamreader (system.in));

String strValue = null

시도하다

{

Strvalue = (문자열) objbr.readline ();

}

스냅 (IOException e)

{

// TODO 자동으로 생성된 catch 블록

E. printstacktrace ();

}

StrValue 를 반환합니다

}

}