导航:首页 > 净水问答 > java素数的过滤

java素数的过滤

发布时间:2023-03-23 19:40:30

A. 用java判断素数

import java.util.Scanner;

public class Test40013 {
public static void main(String args[]) {
int ri, repeat;
int i, m, n;
boolean flag;
Scanner in = new Scanner(System.in);
repeat = in.nextInt();
for (ri = 1; ri <梁迹= repeat; ri++) {
m = in.nextInt();
/告渣李*--------------------*/
flag = true;
if(m == 1){//1不是素数,要袜迟排除
ri--;
continue;
}
for (i = 2; i <= Math.sqrt(m); i++) {
if (m % i == 0) {
flag = false;
break;
}
}
//add ends
if (flag)
System.out.println("YES");
else
System.out.println("NO");
}
}
}

B. java 判断是不是素数

判断number是否是素数有这么几种方法:
(1)用2至number-1之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。
(2)用2至number/2之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。
(3)用2至number的平方根之间的所有数去整除number,如果有一个能被整除嫌察,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。

这3种的方法的效率是逐渐提高的。下面列出了第3种方法的实现:
import java.util.Scanner;

public class Test2 {

public static void main(String[] args) {
int number; // 输入的数字

Scanner input = new Scanner(System.in);
System.out.println("请输入数字");
number = input.nextInt(); // 输入数字

if(isPrimeNumber(number)){
System.out.println(number + "是一个素数");
}
else{
System.out.println(number + "是型巧一个非素数");
}
}

public static boolean isPrimeNumber(int num){
if(num < 2){
System.out.println("数据错误");
return false;
}

int k = (int)Math.sqrt(num); //num的平方根
int i;
for(i=2; i<=k; i++){ //依次用2..k之间的数去整除num,如果没有一个数能被整除,说明num是素数
if(num % i == 0){
break;
}
}
if(i >卜者键 k){
return true;
}
return false;
}
}

如果对你的程序进行修改,也可这样:
public static void main(String[] args) {
int number;// 输入的数字
int j = 2;

Scanner input = new Scanner(System.in);
System.out.println("请输入数字");
number = input.nextInt();// 输入数字

for(j=2;j<number;j++){

if(number%j == 0) {

System.out.println("这不素数");
break;
}
}
if(j>=number)
System.out.println("这是素数");
}

C. 用JAVA判断一个数是否为素数并有异常处理的

不知道你要写个什么异凳卜常处理,有复杂一点的,自己写个自定义异常处理类,简单一点的就是下面这凯粗空个了.直接捕获所有能捕获的异常.
import java.util.Scanner;
public class Num{
public static void main(String[] args){
try{
Scanner input=new Scanner(System.in);
System.out.print("Please enter a num:");
int m;
m=input.nextInt();
int i;
for ( i= 2; i< m; i++) {
if(m%i==0)
break;
}
if(i==m){System.out.println(m+" is a sushu");}
else
System.out.println(m+" is not a sushu");
}catch(Excepion ex){
System.out.println("异常捕获");
}
}

}

-5不在异常处理范围内,如果想处理复杂一点,就要自己写盯瞎个自定义异常类了.

m=input.nextInt();
if(m<1){
throw new MyExcetion("自定义异常!不能小于1");
}
简单一点.
if(m<1){
System.out.println("不能小于1");
}

D. 怎样用Java求1~10000中的所有质数最简便的方法

运用java8新特性stream来解决

参考以下代码

/**
*IntStream.range(1,10001):获取一个stream,是从1-10000的
*filter:取出stream每个数字进行过滤,比裤手如选取数镇嫌字300,则再构造一个stream,从2-299,依次用300取余2-299中的数,若有一个是整除,余数为0的话,这个数字就不是我们要找的质数,跳过
*forEach:打印经过filter过滤后的stream中的每个数
*/
IntStream.range(1,10001).filter(outerInt->!IntStream.range(2,outerInt).anyMatch(innerInt->outerInt%innerInt==0))
御纯手.forEach(System.out::println);

E. java怎么判断素数

1、目前使用较有效的方法是试除法。用试除法判断一个自然数a是不是素数时,用各个素数从小到大依次去除a,如果到某一个素数正好整除,这个a就可以断定不是素数;如果不能整除,当不完全商又小于这银禅个素数时,就不必再继续试除,可以断定a必然是素数。
2、素数又称质数。一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则称为合数。
3、素数是与合数相对立的两个概念,二者构成了数论锋或尘当中最基础的定义之一。基于质数定义的基础之上而建立的问题有很多世界级的难题,如哥德巴赫团弯猜想等。目前为止,人们未找到一个公式可求出所有素数,所以还没有固定的判断公式。
4、一般记住100以内的素数就可以了。有2、3、5、7、11、13、19、17、23、29、37、31、41、47、43、53、59、61、71、67、73、83、89、79、97,一共25个。

F. java 判断素数

j = 2开始就正确了
public class SS{
public static void main(String[] args){
int i=(int)(Math.random()*50+50);
int j;
System.out.println("这个随机数大小为:"+i);
for(j=2;j<=i;j++)
{if(i%j==0)
break; }
if(j==i)
System.out.println(i+"是素数");
}
}

包括自己是正确的,这题包括自己才是楼主算法的精髓。楼主的算法是从1(实际应该是2开始)寻找能被i整除的数,如果能被i整除,且这个举扮凯数字等于i本身了,也就是说从2~i之间只有i这个值能被i整除,那么这个数字就是质数。
所以除了上面的j = 2修改之外,楼主算法的另缺芦外一个修改方案
public class SS{
public static void main(String[] args){
int i=(int)(Math.random()*50+50);
int j;
System.out.println("这个随机数大小为:"正唤+i);
for(j=1;j<=i;j++)
{if(i%j==0 && j != 1)
break; }
if(j==i)
System.out.println(i+"是素数");
}
}
这个也是可以的

当然最快的还是
public class SS {
public static void main(String[] args) {
int i = (int) (Math.random() * 50 + 50);
int j;
System.out.println(这个随机数大小为:"+i);
boolean isPrime = true;

for(j = 2; j < Math.sqrt(i); j++){
if(i % j == 0){
isPrime = false;
break;
}
}

if(isPrime){
System.out.println(i+"是素数");
}

}
}

G. java 筛选法求素数,请进看问题

{
bool ss[10000];
int i,j;
for(i=0;i<10000;i++)
ss[10000]=true;//我们乎尘梁先假设全是素数
ss[0]=false;
ss[1]=false;//我们知道0 与1 肯定不是素兄橡数,先将它们除去
for(i=2;i<100;i++)
{
if(ss[i]){
for(j=i*i;j<10000;j+=i)//这是我们的筛子
{
ss[j]=false;/岁运/我们将其倍数筛去
}
}
}
for(i=0;i<10000;i++)
if(ss[i])
system.out.println('' "+i);

H. 用java编写一个程序段,输入一个自然数,判断该数是否为素数.

使用java编写判断自然数是否为素数的方式是,使用scanner来接受用户输入的数值,使用素数的算法,实例如下:

Scannersr=newScanner(System.in);
System.out.print("请输入a的值:");
脊烂inta=sr.nextInt();
booleanis=true;
if(a<1)
{
System.out.println(a+"不是质数,因为他小于一");
}
else
{
List<Integer>list=newArrayList<Integer>();
for(inti=2;i<a;i++)
{
if(a%i!=1&&a%i!=a)
燃卖{
if(a%i==0){
is=false;
list.add(i);
}
}
}
if(is){
System.out.println("a是质数");
}else{
Stringyz="";
for(inti=0;i<list.size();i++)
{
if(yz=="")
{
yz=yz+list.get(i);
樱段漏}else{
yz=yz+","+list.get(i);
}
}
System.out.println("a不是质数,因为他含有因子"+yz);
}
}

I. java筛法求N以内素数个数

prime[k]数罩散组越界物孙氏了。
没必要搞这么复杂吧。
public class Test{
public static void main(String [] args){
System.out.println("Welcome new world:++"凯肢+add(13));
}
public static int add(int n){
int cnt=0;
for(int i=2;i<=n;i++){
boolean flag = false;
for(int j=2;j<i-1;j++){

if(i%j==0){

flag = true;

}

}

if(!flag){

cnt ++;

}

}
return cnt;

}

J. 用java编写一个判断素数的函数,然后利用这个函数计算100以内素数的个数。

importjava.util.stream.IntStream;

publicclassPrimeNumber{

publicstaticvoidmain(String[]args)祥改{
IntStream.range(2,101)
碰档.filter(PrimeNumber::isPrime)
.forEach(value->System.out.printf("%d",value));
}

privatestaticbooleanisPrime(intnumber){
returnIntStream.range(2,number/2+1)
.noneMatch(i->number%i==0);
}
}

输出:

235711131719笑宴乱
阅读全文

与java素数的过滤相关的资料

热点内容
猫眼排行榜实时查询 浏览:974
靠谱的手机免费电影网站 浏览:415
男男电影 浏览:605
双青污水处理厂现在是否使用 浏览:370
宫斗文男主子嗣艰难女主易孕 浏览:170
弹性不饱和树脂种类和特点 浏览:33
BL电影肉 浏览:807
无限恐怖一共出现几个电影 浏览:915
肃流毒反渗透心得体会1500 浏览:111
饮水机常温水怎么样 浏览:702
芮丝安娜 浏览:5
污水处理工艺封面 浏览:900
欧美几个小孩冒险的科幻电影 浏览:96
黑人英语作弊 浏览:935
净水器水管水压小怎么办 浏览:869
法国电影一对情侣,另一个女的 浏览:471
韩国电影几个男的一起喝酒 浏览:748
泰国电影罪孽父子抢女人 浏览:874
空气净化器能过滤气溶胶吗 浏览:684
水合肼处理含铜废水 浏览:365