2011-12-06 14 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ループを必要と思っていますが、私が実装すると、同じ第2の宇宙を何度も何度も印刷し続けています。

+0

'for'ループの周りの' new Universe'行の後の 'while'ループは機能しませんでしたか?それはあなたがあなたの 'while 'を置く場所ですか? – Gray

+0

さて、私はwhileループ部分を得ましたが、ループの終わりにどのようにして宇宙を交換するのですか?私はtemp = u2のように思っています。 u1 = temp; ??? – 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

関連する問題