현재 위치 - 주공해몽공식사이트 - 랜덤 번호 뽑기 점술 - 자바 (Java) 로 쓴 인생 체스 소스 코드를 구하다

자바 (Java) 로 쓴 인생 체스 소스 코드를 구하다

/** 0 은 죽음을 의미하고 1 은 살아 있음을 의미합니다.

상태를 수동으로 입력합니다. 다음 규칙에 따라 계산됩니다.

1 각 그리드에 차세대 살아있는 세포가 있는지 여부는 현재 그리드에 인접한 8 개 메시의 세포 생존에 따라 달라집니다.

살아있는 세포 주위에 2 ~ 3 개의 살아있는 세포가 있을 때, 그 세포는 다음 세대까지 살아남습니다. 또는 죽음.

그리드 주위에 세 개의 살아있는 세포가 있을 때, 다음 세대에서는 살아있는 세포가 그리드에 나타납니다.

*/

공용 클래스 CellLife {

/* *

* @param args

*/

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

// TODO 자동으로 생성된 메소드 스텁

//int [] [] arr = new int [5] [5]; //5*5 보드

Int[][] arr = {{0, 1, 0, 1, 0}, {1,/kloc.

Int [] [] brr = {{0,0,0,0,0}, {0,0,0}, {0,0,0}, {0,0,0,0}, { 을 눌러 섹션을 인쇄할 수도 있습니다 //상태 대기

Int x, y; //레코드 행 및 열

Intcnt = 0; //반복 횟수 기록

부울 플래그 = 참;

System.out.println ("초기 상태:");

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

For(int j = 0;; J<5; J++)

System.out.print (arr [I] [j]+"");

System.out.println ();

}

Int [] nb = new int [8]; //이웃 8 명

While(flag) {

Cnt++;+;

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

For(int j = 0;; J<5; J++) {

X = I-1;

Y = j-1;

((x>= 0)& amp;; 인 경우 & amp(y & gt=0))

Nb [0] = arr [x] [y];

기타

Nb [0] = 0;

X = I-1;

Y = j;;

If(x & gt;; =0)

Nb [1] = arr [x] [y];

기타

Nb [1] = 0;

X = I-1;

Y = j+1;

((x>= 0)& amp;; 인 경우 & amp(y & lt5))

Nb [2] = arr [x] [y];

기타

Nb [2] = 0;

X = I;;

Y = j-1;

(y & gt=0) 인 경우

Nb [3] = arr [x] [y];

기타

Nb [3] = 0;

X = I;;

Y = j+1;

If(y & lt;; 5) 을 참조하십시오

Nb [4] = arr [x] [y];

기타

Nb [4] = 0;

X = I+1;

Y = j-1;

((x & lt5)& amp;; 인 경우 & amp(y & gt=0))

Nb [5] = arr [x] [y];

기타

Nb [5] = 0;

X = I+1;

Y = j;;

If(x & lt;; 5) 을 참조하십시오

Nb [6] = arr [x] [y];

기타

Nb [6] = 0;

X = I+1;

Y = j+1;

((x & lt5)& amp;; 인 경우 & amp(y & lt5))

Nb [7] = arr [x] [y];

기타

Nb [7] = 0;

//차세대 상태 판단

Intsum = 0;

For(int n = 0;; N<8; N++)

Sum = sum+nb [n];

If(arr[i][j]== 1)// 살아있는 세포

If (합계 = = 2 | | 합계 = = 3)

Brr [I] [j] =1;

기타

Brr [I] [j] = 0;

엘시//죽은 세포

If (합계 = = 3)

Brr [I] [j] =1;

기타

Brr [I] [j] = 0;

}

}

Flag =! CellLife.same(arr, brr) :

// System.out.println ("차세대 상태:");

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

For(int j = 0;; J<5; J++) {

Arr [I] [j] = brr [I] [j];

//system.out.print (arr [I] [j]+"");

}

//system.out.println ();

}

}

System.out.println ("최종 상태:");

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

For(int j = 0;; J<5; J++)

System.out.print (arr [I] [j]+"");

System.out.println ();

}

System.out.println ("반복 횟수:"+CNT);

}

Public static booleansame (int [] [] a, int[][] b) {

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

For(int j = 0;; J<5; J++)

If(a[i][j]! =b[i][j])

False 를 반환합니다

True 를 반환합니다

}

}