public class Prime { public static void main(String[] args) {
long start = System.currentTimeMillis();
for (int i = 2; i <= 10000; i++) {
for (int j = 2; j <= (int) Math.sqrt(i) + 1; j++) { if (i == 2 && j == 2) {
System.out.print(i + " ");
continue;
} if (i % j == 0) {
break;
}
if (j >= (int) Math.sqrt(i) + 1) {
System.out.print(i + " ");
}
}
}
System.out.println();
long end = System.currentTimeMillis();
System.out.println("time : " + (end - start) + " milliseconds");
}
}这个地方:
if (j >= (int) Math.sqrt(i) + 1) {
System.out.print(i + " ");
}
为什么还要判断一次呢?谢谢!
解决方案 »
- C#DES加密如何用Java解密
- 关于小数点四舍五入的问题。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
- 在jboss4里部署里一个EJB的问题?
- java是否有办法生成带有vba脚本的Excel啊?
- 怎么把xml文件解析为jsp文件?
- 怎么设置Tomcat自动加载?
- 例如我打一个JAR 包,JAR包里有一些Hibernate的XML映射文件或其他的XML形式的配置文件,然后把这个JAR包方到JBOSS的LIB目录下,然后如何
- 请问各位 这个功能在struts1.1中如何实现?
- 关于EJB编译问题?(带的编译问题)
- 求大神帮忙看看修改修改
- (上午结贴)毕业设计网站
- insert多张表,通过一个事务如何去处理
//System.out.print(i + " ");
}
else
{
System.out.print(i + " ");
}
这样弄一下,发现要是不判断他就把除不尽的数都列出来了
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Sushu s=new Sushu();
boolean b=s.sushu(110);
System.out.println("验证素数:"+b);
}
public boolean sushu(int num){
boolean flag=false;
if(num!=0&&num!=1&&num>2){
int t=num/2+1;
for(int i=2;i<=t;i++){
if(num%i!=0){
flag=true;
}else{
flag=false;
break;
}
}
}else if(num==2){
flag=true;
}else{
flag=false;
}
return flag;
}
}