尝试获取一对数(偶数)时,for循环被卡住

时间:2014-11-27 21:12:12

标签: c# loops

这是我的部分代码:

 Random rnd = new Random();
 int tamanoAlt = 0; int tamanoAnch = 0;
 for (int al = 0; al < 1; al++)
 {
     tamanoAlt = rnd.Next(tamMinHabAlt, tamMaxHabAlt);
     if((tamanoAlt %2 ) != 0){
        al--;
     }
 }

程序在此循环中停止。我已尝试使用while / do-while循环,我得到相同的结果。

我试图随机生成一对数字。 tamMinHabAlttamMaxHabAlt之间的范围很大,可以获得不同的对数。

2 个答案:

答案 0 :(得分:0)

This solution will work for you.


Random rnd = new Random();
int tamanoAlt = rnd.Next(tamMinHabAlt, tamMaxHabAlt);
while(tamanoAlt % 2 != 0){
    tamanoAlt = rnd.Next(tamMinHabAlt, tamMaxHabAlt);
}

// tamanoAlt将成对编号

答案 1 :(得分:0)

我不是C#家伙,但我假设按位运算符类似于C / C ++:

Random rnd = new Random();
int tamanoAlt = rnd.Next(tamMinHabAlt, tamMaxHabAlt) & ~1;