【发布时间】:2016-01-19 17:21:40
【问题描述】:
我正在尝试做一个质数查找器,但不明白为什么它不起作用。 当我运行调试测试时,控制台中没有任何显示。有人可以检查一下并告诉我我做错了什么吗?
List<int> primes = new List<int>();
primes.Add(2);
primes.Add(3);
int maxPrime = 11; //The maximum found Primes
int primeCount = primes.Count; //Current Number of Primes
int num = 4; //Current Number
int x = 0; //
int curPrime = primes[x];
while (primeCount < maxPrime)
{
if (x != primeCount)
{
if (num % primes[x] == 0)
{
num++;
x = 0;
}
else
{
x++;
}
}
else
{
primes.Add(num);
primeCount=primes.Count;
x = 0;
}
}
primes.ForEach(i => Console.Write("{0}\t", i));
【问题讨论】:
-
当您在调试器中单步执行代码时,具体而言观察到的行为与预期行为有何不同?发生这种情况时的运行时值是多少?
-
there are so00000000 许多关于如何做到这一点的工作示例在这里是一个更简单的示例,使用单个值stackoverflow.com/questions/886540/prime-numbers-c-sharp
-
增加
primeCount会有所帮助....