如何判断100以内的素数?
2018-03-28 17:51
351 查看
int i, j; int count=0; for (i = 2; i <= 100; i++) { for (j = 2; j < i; j++) { if (i % j == 0) break; } if (j == i) { System.out.print(i+" "); count++; } } System.out.println("---------"+count+"----------");
for (int i = 2; i <= 100; i++) {// 1既不是质数也不是和数,所以从2开始 boolean k = true; for (int n = 2; n < i; n++) {//注意n<i所以如果在i之前 ,有能取余为0的,就不是素数 if (i % n == 0) { k = false; break; } } if (k) { System.out.print(i + " "); } }1、外层for循环有必要执行100次吗?除了2所有的偶数都不是质数,那么能不能只遍历奇数。代码:for (int i = 3; i < 100; i+=2) //i一次循环自增2考虑到这个问题,for循环就少遍历了50次。效率就提升了一倍2、内层for循环能不能也做些优化呢?内层for循环作为 除数(除数从3 到 被除数-1),通过规律发现除数只需要从3 到 除数的开平方根数 就行了。 boolean bool;
int count=0;
System.out.print(2+" ");
for (int i = 3; i < 100; i += 2) {//能够被2整除的不是素数,所以2的倍数的数不是素数
bool = true;
for (int j = 3; j <= Math.sqrt(i); j++) {
if (i % j == 0) {
bool = false;
break;
}
}
if (bool)
{
System.out.print(i + " ");
count++;
}
}
System.out.print(count+1+"--------");
}
}
相关文章推荐
- Java 求1-100以内的所有素数,判断一个数是不是素数。Java代码实现附测试结果图
- 判断1-100以内的素数
- 如何用T-SQL使用最短的语句输出100以内素数?
- C语言如何判断一个数是素数,输出100-200之间的全部素数。
- 如何用T-SQL使用最短的语句输出100以内素数?
- 判断并输出100以内的所有素数
- 如何用代码打印100~200以内的素数
- 判断100以内的质数(素数)
- 函数实现判断素数并调用函数输出100以内所有素数
- 汇编语言-判断素数:找出前100以内的素数
- 实训JAVA语言设计——判断出100以内的素数
- 判断素数和输出100以内的素数
- 如何求100以内的孪生素数
- 数据库中如何求1-100以内的素数
- 使用c语言判断100以内素数的示例(c语言求素数)
- C语言 素数判断,输出100以内的素数,用逗号分隔,第一个逗号不输出
- 筛选法求1到100以内的素数
- 用Java语言编写程序:输出100以内的素数
- java——输出100以内的素数
- 求100以内的所有素数 和 求前100个素数