笨鸟

天道酬勤,思者常新;博观约取,厚积薄发;心如止水,气贯长虹;淡泊明志,宁静致远。
posts - 10, comments - 0, trackbacks - 0, articles - 1

问题7-求第10001个质数

Posted on 2010-11-23 13:56 ClumsyBird 阅读(866) 评论(0)  编辑  收藏 所属分类: 一些问题-projecteuler
    问题描述如下:
        “前6个质数为:2,3,5,7,11,13,那第6个质数为13,求第10001个质数。”
    代码如下:
private static int getPrimeNumberBy(int n) {
        
int j = 1;
        
int i = 1;
        
int result = 0;
        
while (j < n) {
            
if (AlgorithmUtil.isPrimeNumber(i)) {
                result 
= i;
                j
++;
            }

            i 
+= 2;
        }

        
return result;
    }
    下面是判断质数的代码:
/**
     * 判断是否是素数
     * 
     * 
@param n
     * 
@return
     
*/

    
public static boolean isPrimeNumber(int n) {
        
if (n < 2{
            
return false;
        }

        
double max = Math.sqrt(n);
        
for (int i = 2; i <= max; i++{
            
if (n % i == 0{
                
return false;

            }

        }

        
return true;
    }
    ps:质数也叫素数。

    请不吝赐教。
    @anthor ClumsyBird

-----------------------------
博观约取,厚积薄发


只有注册用户登录后才能发表评论。


网站导航: