题目:
求100000以内的质数的总个数、及打印出来质数。
代码:
方法一:
fanfayipackage scan;
public class Yy{
public static void main (String[] args) {
// boolean flag = true ;
int count = 0;
long first = System.currentTimeMillis();
for(int i = 2; i < 100000; i++)
{
// primeJudge=true;
boolean flag = true ;
for(int j = 2; j <= Math.sqrt(i); j++){ //利用sqrt函数,减少循环次数
if(i % j==0) {
flag = false;
break; //利用break减少循环次数
}
}
if(flag == true)
System.out.println(i + "\t");
count++;
}
long end = System.currentTimeMillis();
System.out.println("次数:" + count);
System.out.println("时间:" + (end - first));
}
}
方法二:
fanfayipackage scan;
public class Yy{
public static void main (String[] args) {
// boolean flag = true ;
int count = 0;
long first = System.currentTimeMillis();
label : for(int i = 2; i < 100000; i++)
{
for(int j = 2; j <= Math.sqrt(i); j++){ //利用sqrt函数,减少循环次数
if(i % j==0) {
continue label ;
}
}
count++;
}
long end = System.currentTimeMillis();
System.out.println("次数:" + count);
System.out.println("时间:" + (end - first));
}
}