您的位置:首页 > 其它

关于素数问题总结

2015-05-08 11:55 162 查看
一.判断某一个数是否为素数

public class TestPrime2 {

public static void main(String[] args) {

int i;
// loop:while (true) {
System.out.println("请输入一个整数:");
Scanner s = new Scanner(System.in);
int number = s.nextInt();
if (number == 0) {
// break loop;
}
for (i = 2; i < Math.sqrt(number); i++) {
if (number % i == 0) {
break;
}
}
if (i > Math.sqrt(number)) {
System.out.println(number + "是素数");
} else {
System.out.println(number + "不是素数");
}
// }
// s.close();(第10行警告没有关闭输入流)
}


二.输出某一范围内的所有素数

任何含有break或者continue的程序语句,都可以转换如下的

形式

// 输出1~10000以内的所有素数(质数)
@Test
public void test1() {
for (int i = 1; i < 10000; i++) {
boolean flag = true;
for (int j = 2; j < Math.sqrt(i) && flag; j++) {
if (i % j == 0) {
flag = false;
}
}
if (flag && i != 1) {// 1不是素数,不能输出
System.out.println(i);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: