2015-11-08 71 views
-4

给定输入n,找出第n个素数?数字的第nth是什么意思?

MyApproach

我理解

例如

对于2号其第n个位置是1

对于数3其第n个位置是2 //对于这个输入我得到期望的输出5.

对于数字5的第n个位置是3

public int computePrime(int n) 
{ 
    int c=0; 
    boolean b=isPrime(n); 
    if((b==true)) 
    { 
     c++; 
    } 
    return c; 

    //write your code here 

} 
public boolean isPrime(int n) 
{ 

    for(int i=2;i<=n/2;) 
    { 
     if(n%i==0) 
     { 
      i++; 
     } 

    } 
    return true; 
} 

输入

Parameters Actual Output Expected Output 
'3'   1    5 

我QN是任何人都可以指导我什么,语句mean.Am我理解的疑难问题纠正我不是要求你为我编码。我会这样做

+0

有没有听说过谷歌? – Seelenvirtuose

+0

我所得到的是代码和代码。我想了解问题的含义? –

+2

你应该返回第*个素数(第一个数为2)*。不是“n”的位置。 – zapl

回答

0

你想返回第n个素数,其中“n”是给定的输入,所以你想要的是这样的:

boolean isPrime(int i) 
{ 
    int j = 1; 
    while (j <= (i/2)) 
    { 
     if (i%j == 0) 
     { 
      if (j!=1) 
       return false; 
     } 
     j++; 
    } 
    return true; 

} 

void main(int n){ 

    int i = 0; 
    int numbers = 2; 
    while (i<n){ 
     if (isPrime(number)){ 
      i++; 
     } 
     numbers++; 
    } 
    return numbers; 

}