2011-12-06 3 views
0

이것은 우리가 인생의 게임을 만들어야하는 숙제입니다. 여기 내 코드는while 루프를 사용하여 연속 유니버스를 만드는 방법 ??

Universe u2 = new Universe(Width, Height, ' '); 
Universe temp = new Universe(Width, Height, ' '); 
//want to write a loop within a loop that goes through every single cell that  contains a character 



for (int i=0;i<Width;i++) 
{ 
    for (int j=0; j<Height; j++) 
    { 
     if (u1.numNeighbors(i, j)>3 || u1.numNeighbors(i, j) <2) 
     { 
      u2.setPixel(i, j, ' '); 
     } 
     else if (u1.numNeighbors(i, j) ==3 && u1.getPixel(i, j) == ' ') 
     { 
      u2.setPixel(i, j, '*'); 
     } 
     else 
     { 
      u2.setPixel(i,j, '*'); 
     } 
    } 

System.out.print(u2); 

} 

그래서 이웃들의 계산이 효과가 있다는 것을 알고 있습니다. 연속적인 유니버스를 만드는 방법이 필요합니다. 결과는이 애니메이션에 등장하는 애니메이션처럼 보입니다. page

해당 페이지에서 규칙을 찾을 수 있습니다.

나는 while (true) 루프가 필요하다고 생각하지만 구현할 때 동일한 두 번째 우주를 반복해서 인쇄합니다.

+0

'for' 루프 주변의'new Universe' 행 다음에'while' 루프가 작동하지 않았습니까? 'while '을 어디에 두는가? – Gray

+0

그래, while 루프 부분을 얻었지만 루프 끝 부분에서 유니버스를 어떻게 바꿀 수 있습니까? 나는 temp = u2처럼 생각하고있다. u1 = 임시; ??? – ironcyclone

답변

0
boolean goOn=true; 
... 
... 
while(goOn){ 
    u2=new Universe(...); 
    //your double nested for loops 
    System.out.print(u2); 
    u1=u2; 
} 

그런 다음 종료 할 때마다 goOn을 false로 설정하는 키리스터를 작성할 수 있습니다.

+0

이것은 내가 당신에게 감사를 표합니다. – ironcyclone

관련 문제