2012-04-18 55 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