1

假设我有一门课叫狗,另一门叫人。我需要那些人能够赌狗,他们是按数字赌的(所以“人”赌狗 2 号)。如果狗赢了,他们会得到现金,否则他们会输。现在我遇到的问题是制作每只狗每次都获胜的系统。我想过这样做:

class Dog
    {
        public Random random;
        private bool race()
        {
            for (int i = random.Next(1,10); i < 10; i++)
            {
                return false;
            }
            return true;
        }
    }

这将使它为每个调用 race 方法的实例生成一个介于 1 和 4 之间的随机数。但是这样一来,最终它们都将达到 10 并返回 true,因为我无法说“当其中一个实例返回 true 时,停止所有其他实例的方法。而且,如果巧合两个实例生成相同的数字那么他们都会赢,我也不希望有两个赢家。那么我该如何改进这种方法或制作一个更好的方法,我可以制作尽可能多的狗实例,但只有一只狗会赢?

请记住,我对此很陌生,还不能使用事件。

4

1 回答 1

1

我认为最简单的处理方法是创建一个Race类或类似的。

public class Race
{
    public Dog Race(Dog[] dogs)
    {
        Random random = new Random();
        return dogs[random.Next(0, dogs.Length)];
    }
}
于 2013-02-08T06:58:48.087 回答