日期:2014-05-20  浏览次数:20842 次

如何求小于该数的质数
从系统中读取一个文件 文件中有数字和字符,他们是用逗号分开的,把读取到的东西进行判断,如果是数字计算出小于该数的质数并把它输出,如果不是数字就输出它不是数字。求各位帮忙,给个代码!万分感激了


------解决方案--------------------
Java code
public class Primes
{
    public static void main(String args[])
    {
        int maxValue = 50; // The maximum value to be checked.
        // Check all values from 2 to maxValue:
        OuterLoop: for (int i = 2; i <= maxValue; i++)
        {
            // Try dividing by all integers from 2 to square root of i:
            for (int j = 2; j <= Math.sqrt(i); j++)
            {
                if (i % j == 0) // This is true if j divides exactly
                    continue OuterLoop; // so exit the loop.
            }
            // We only get here if we have a prime:
            System.out.println(i); // so output the value.
        }
    }
}

------解决方案--------------------
探讨
ublic class Primes
{
public static void main(String args[])
{
int maxValue = 50; // 要被进行查找的最大值.
// 查找从2到最大值的所有数字:
OuterLoop: for (int i = 2; i <= maxValue; i++)
{
// 尝试求所有整数的i的平方根:
for (int j = 2; j <= Math.sqrt(i); j++)
{
if (i % j == 0) // 如果i%j返回真
continue OuterLoop; // 跳出当前循环到OuterLoop.
}
// 我们就先做到这了,希望有更好的算法提供
System.out.println(i); // 输出结果.
}
}
}

------解决方案--------------------
判断一个数字是否为质数的优化算法
http://www.java2000.net/viewthread.jsp?tid=121