/**
* 描述:任意输入两个数n,m(n<m)判断n-m之间有多少个素数,并输出所有素数。
* 分析:素数即质数,除1和本身之外,不能被其他自然数整除的数。
* 判断素数的方法为:用一个数分别去除2到sqrt(这个数),如果能被整除,这表明此数不是素数,反之是素数。
* 作者:徐守威
*/
package com.xushouwei;
import java.util.*;
public class T2 {
/**
* @param args
*/
public static void 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;
}
else if(i==j)
{
//计数器加一
cout++;
//输出质数
System.out.print(i+" ");
}
}
}
System.out.println();
System.out.println(n+"到"+m+"之间的素数个数为:"+cout+"个!");
}
}
}