看别人的时候没看懂,自己写的时候想了想就明白了,也添上注释发出来。
注释纯粹个人理解。
/**4.大范围内判断一个数是否为质数
* Prime number
* 设置一个开关,1~sqrt(n)之间的非质数设为关状态
* 最后还是用mod 1~sqrt(n 之间的质数判断。
* 条件 n为整数,可能对小的数有问题
* @author gdcic-zhang
*/
public boolean isPrime2(int n){
boolean result=true;
int end=(int) Math.sqrt(n);
BitSet b=new BitSet(end);//开关
int i;
for(i=2;i<end;i++){
b.set(i);//所有为处于打开状态,
}
i=2;
while(i*i<end){
if(b.get(i)){
for(int k=i;k<b.size();k+=i){
b.clear(i);
}
}
i++;
}
for(i=2;i<end;i++){
if(b.get(i)){
if(n%i==0){
result=false;
break;
}
}
}
return result;
}
分享到:
相关推荐
以下是一个C语言程序示例,用于检测指定范围内的回文素数在C语言中,要检测一个数是否为回文素数,你需要分两步进行: 判断该数是否为素数。 判断该数是否为回文数(正读反读都一样的数)。 以下是一个C语言程序...
输入一个正整数,判断是不是素数(C++) 设和和我一样的初学者看。
1.求出指定范围内的所有素数(只能被1和自身整除的数)。 2.把从键盘上输入的一个大于等于3的整数分解为质因子的乘积。 3.哥德巴赫猜想之一是,任何一个不小于6的偶数都可以表示为两个素数之和,例如,6=3+3,8=3+5...
素数并求和
当你输入一个范围时,程序会判定该范围内的所有素数,并输出!
输出指定范围内所有素数 指定范围(MIN,MAX)内所有素数
//is_prime函数用来判断输入的数x是否是素数 int is_prime(int n) { if (n ) return 0; if (n == 2) return 1; // 所有偶数都不是素数 if (n%2 == 0) return 0; // 只需要检查奇数 /* m不必被2~m-1之间的每...
判断一个数是否为质数,有以下几个条件: 大于1:质数必须是大于1的自然数,1既不是质数也不是合数。 只能被1和自己整除:如果一个数只能被1和自己整除,那么这个数就是质数。换句话说,在2到该数-1的范围内,不...
编写一段代码,能够判断m-n之间有几个素数,并在输入错误的情况下有异常处理,同时自定义函数isPrime(x)进行素数判断,最后依次输出是否是素数的结果。
输入一个范围,输出该范围内的最大的素数,C++写的
3 如何判断一个数是否为质数(素数) 判断一个数是质数(素数),还是合数,可以根据它的约数的个数来确定:只有两个 约数的数,是质数;有三个或三个以上的约数的数是合数;有且只有一个约数的数既不 是质数也不是...
判断0-n之间的质数,输出质数。 int *s; do { printf("please input n:\n"); scanf("%d",&n); }while(n); s=(int*)calloc(n+1,sizeof(int));
在上述代码中,is_prime 函数用于判断一个数是否为素数。首先判断如果数小于 2,则直接返回 False,因为小于 2 的数都不是素数。然后,通过从 2 开始到该数平方根的范围内进行遍历,判断是否存在能整除该数的因子。...
本文实例讲述了Python实现输出某区间范围内全部素数的方法。分享给大家供大家参考,具体如下: # -*- coding: utf-8 -*- # 简述:区间范围101-200 # 要求:判断这个区间内有多少个素数,并逐一输出。 def prime(m,n...
这是使用VB 设计的质数判断程序及算法, 适用于数学及科学研究。功能有: 1.输入一个数, 通过一定的算法, 判断其是否为质数。 2.给定一个范围, 导出该范围内的所有质数表。
算法:判断一个数是否是质数,只需判断它是否能被小于它开跟后后的所有数整除,这样做的运算就会少了很多,因此效率也高了很多。算法来源:《Java求质数的几种常用算法》 javascript计算指定范围内的质数源代码: &...
这是一个非常有用的程序,肯定积分卡时间飞快的就发生点击放大快速反击拉绍德封看到
以下是一个 Python 程序的示例,用于找出一定范围内的所有回文素数: python def is_prime(n): """判断一个数是否是素数""" if n return False for i in range(2, int(n**0.5) + 1): if n % i == 0: ...
【Java】求1-100范围内的素数递归方法代码例子。分享,感谢。
一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。 方法1 def primeNUM(min,max): if min==1: print('') min += 1 for i in range(min, max+1): for j in range(2, i + ...