Java经典案例之-判断质数,素数

/**

* 描述:任意输入两个数n,m(n<m)判断n-m之间有多少个素数,并输出所有素数。

* 分析:素数即质数,除1和本身之外,不能被其他自然数整除的数。

* 判断素数的方法为:用一个数分别去除2到sqrt(这个数),如果能被整除,这表明此数不是素数,反之是素数。

* 作者:徐守威

*/

package com.xushouwei;

import java.util.*;

publicclass T2 {

/**

* @param args

*/

publicstaticvoid main(String[] args) {

// TODO Auto-generated method stub

Scanner sc=new Scanner(System.in);

System.out.println("请输入起始数n:");

int n=sc.nextInt();

System.out.println("请输入终止数m:");

int m=sc.nextInt();

//定义一个计数器用于记录素数的个数

int cout=0;

//判断所输入的数字时候符合问题要求

if(n>=m)

{

//退出

System.exit(0);

}

else

{

//外层循环用于遍历从n到m这些数

System.out.print(n+"到"+m+"之间的素数数为:");

for(int i=n;i<=m;i++)

{

//内层循环用于求出素数

for(int j=2;j<=i;j++)

{

//用i%j如果等于0并且j不等于i两个条件判断是否还有其他可以除尽的数,表明只有自身可以整除

if(i%j==0&&j!=i)

{

break;

}

elseif(i==j)

{

//计数器加一

cout++;

//输出质数

System.out.print(i+" ");

}

}

}

System.out.println();

System.out.println(n+"到"+m+"之间的素数个数为:"+cout+"个!");

}

}

}