給一個數,返回比它小的最大質數
今天,有個朋友說他們java老師布置了一道題,要求寫一個java程序,
已知一個數,然后給出比這個數小的最大質數。
起初給他寫了這個asp的程序,希望他自己動手做出java版本的,
后來看他太笨,估計沒怎么好好學,就把java的也寫了。
<%
Dim intNumber
intNumber = 400000
If intNumber<>2 And intNumber mod 2 =0 Then
intNumber=intNumber-1
End If
For i=intNumber To 1 step -1
bln=false
m=cint(sqr(i))
For j=2 To m
If i Mod j = 0 Then
bln=true
Exit For
End If
Next
If Not bln Then Exit For
Next
Response.Write i
%>
class ZhiShu
{
PRivate static int getMaxZhiShu(int itmp)
{
if(itmp%2==0) itmp=itmp-1;
boolean bln=false;
int i1=0;
int i=0;
for(i=itmp;i>0;i-=2)
{
bln=false;
i1=(int)Math.sqrt(i);
for(int j=3;j<i1;j+=2)
{
if(i%j==0) bln=true;
break;
}
if(!bln) break;
}
return i;
}
public static void main(String[] args)
{
System.out.println(getMaxZhiShu(100));
}
}
新聞熱點
疑難解答