2012-04-18 56 views
0

我想在這些支柱之間交替的支柱上放置支柱 (我認爲我沒有正確解釋),但是例如在第1排中它將有9支柱和第2排它會有8個支柱。我想嘗試在嵌套for循環中執行,但不確定如何處理塊中的代碼。支柱的配置

目前,我有這樣的: 這裏是我的變量:

float PegPosX = -1.0f; 
float PegYStartPos; 
float PegPosY = 6.0f; 
int Pegs = 0; 
int PegsInRow = 8; 

while(Pegs < NumPegs){ 
    for (int row = 0; row < PegsInRow; ++row) { 
    int num_cols = (row % 2 == 0) ? 9 : 8; 
    PegPosY -= 0.5f; 
     for (int col = 0; col < num_cols; ++col){ 
      PegPosX += 1.0f; 
      displayPegs[Pegs].PegPosition(PegPosX, PegPosY); 
     } 
    } 
    ++Pegs; 
} 
+6

是的,你沒有正確解釋 – 2012-04-18 08:39:15

回答

0
for (int row = 0; row < num_rows; ++row) { 
    int num_cols = (row % 2 == 0) ? 9 : 8; 
    for (int col = 0; col < num_cols; ++col) { 
     placePillar(...); 
    } 
} 
+0

謝謝皮特我曾嘗試你的代碼適應我的,但仍然可以」不要在我的屏幕上看到支柱。如果你有時間編輯我的文章幷包含一些代碼,我想我可能會改編錯誤。謝謝:) – DorkMonstuh 2012-04-18 13:43:06

+0

Pegs變量在內部循環中沒有被改變,所以pegs總是被放置在同一個地方。爲什麼添加外部while循環? – Pete 2012-04-18 16:28:46

+0

我添加了外部while循環,因爲我有68個支柱,我需要放下NumPegs是一個常量,它是= 68.你將如何解決這個問題,我已經鑽研了很長一段時間。 – DorkMonstuh 2012-04-18 18:38:07