如何找到1到maxvalue之间的最大素数

时间:2018-03-14 06:29:34

标签: c#

我很难编写程序来查找c#中最大值1到1之间的素数

它不断显示一些永不结束的随机数。

int num;
int k;

for (int i=int.MaxValue; i>0; i--)
{
    for(num=i-1; num>0; num--)
    {
        if(i != num &&  i % num !=0)
        {
            k = num;
            break;
        }
        else
        {
            continue;
        }

    }
    Console.Write(k);
}

1 个答案:

答案 0 :(得分:0)

试试这段代码:

int maxValue = 30;
bool isPrime;
for (int i = maxValue; i > 1; i--)
{
    isPrime = true;
    for (int j = 2; j <= Math.Floor(Math.Sqrt(i)); j++)
        if(i % j == 0)
        {
            isPrime = false;
            break;
        }

    if (isPrime)
        MessageBox.Show(i.ToString());
}