纯净、安全、绿色的下载网站

首页|软件分类|下载排行|最新软件|IT学院

当前位置:首页IT学院IT技术

java 判断素数 java怎样判断一个数是否是素数(质数)

幻影寒狼   2021-09-03 我要评论
想了解java怎样判断一个数是否是素数(质数)的相关内容吗幻影寒狼在本文为您仔细讲解java 判断素数的相关知识和一些Code实例欢迎阅读和指正我们先划重点:java素数,java质数下面大家一起来学习吧。

java判断一个数是否是素数(质数)

质数(prime number)又称素数有无限个

质数定义为在大于1的自然数中除了1和它本身以外不再有其他因数这样的数称为质数。

import java.util.Scanner;
public class TestWork {
 public static void main(String[] args) {
  boolean isPrime = true;
  Scanner sc = new Scanner(System.in);
  System.out.println("请输入一个正整数");
  int num = sc.nextInt();
  if (num > 0) {
   int k = (int) Math.sqrt(num);//k为num的正平方根取整数
   for (int i = 2; i <= k; i++) {
    if (num % i == 0) {
     isPrime = false;//不是素数
     break;
    }
   }
  }
  if (isPrime) {
   System.out.println(num + "是素数");
  } else {
   System.out.println(num + "不是素数");
  }
 }
}

输出1~1000之间的素数

思路

偶数肯定不是素数所以递增的时候可以以奇数的形式递增再在奇数中去掉非质数的数。

public class TestWork {
 public static void main(String[] args) {
  boolean isPrime = true;
  int PrimeCount=0;
  for (int i = 3; i <= 1000; i+=2) {
   int k = (int) Math.sqrt(i);//k为num的正平方根取整数
   isPrime = true;
   for (int j = 2; j <= k; j++) {
    if (i % j == 0) {
     isPrime = false;//不是素数
     break;
    }
   }
   if (isPrime) {
    PrimeCount++;
    System.out.print(i+"\t");
    if(PrimeCount%5==0){
     System.out.println();
    }
   }
  }
 }
}

java 求1-100之间的质数

质数定义:

质数又称素数。一个大于1的自然数除了1和它自身外不能被其他自然数整除的数叫做质数;否则称为合数。

如:235711…

1、质数实例一

//1-100之间的质数--------1
public class PrimeNumber {
 public static void main(String[] args) {
  for(int i=2;i<=100;i++) {
   boolean flag=true;
   for(int j=2;j<i;j++) {
    if(i%j == 0) {
     flag=false;
     break;     
    }        
   }
   if(flag) {
    System.out.println("质数:i= "+i);   
   }
  }  
 }
}

2、质数实例二

//1-100之间的质数--------2
public class PrimeNumber {
 public static void main(String[] args) { 
        for(int i=2;i<=100;i++) {   
            for(int j=2;j<=i;j++) {
                if(i%j==0 && i!=j) {
                    break;     
                }
                if(j==i) {
                    System.out.println("质数:i= "+i);     
                }    
            }
        }
    }
}  

3、质数实例三

//1-100之间的质数--------3
public class PrimeNumber {
 public static void main(String[] args) {
        for(int i=2;i<=100;i++) {   
            int j=2;
            while(i%j != 0 ) {
                j++;     
            }
            if(j==i) {
                System.out.println("质数:i= "+i);         
            }
        }
    }
}

4、质数实例四

//1-100之间的质数--------4
public class PrimeNumber {
 public static void main(String[] args) {
        for(int i=2;i<=100;i++) {
            int j=2;
            for(;j<=i/2;j++) {
                if(i%j==0) {
                    break;     
                }   
            }
            if(j==i/2+1) {
                System.out.println("质数:i= "+i);                   
            } 
        }
 } 
} 

5、质数实例五

public class PrimeNumber {
 public static void main(String[] args) {
  int count=0;
  for(int i=2;i<=100;i++) {
   int j=2;
   for(;j<=(int)Math.sqrt(i);j++) {
    if(i%j==0) {
     break;     
    }   
   }
   if(j==(int)Math.sqrt(i)+1) {
    System.out.println("质数:i= "+i);
    count++;     
   } 
  }
  System.out.println("质数个数:count= "+count);
    }
}

6、质数实例六

public class PrimeNumber {
 public static void main(String[] args) {
int count1 = 0, count2 = 0;
  for (int i = 2; i <= 100; i++) {   
   for (int j = 2; j <= Math.sqrt(i); j++) {
    if (i % j != 0) {
     //不能被整除累计一次
     count1++;
    }
   }
   // 转为int的类型
   int num2 = (int) Math.sqrt(i);
   //如果累计次数num2 - 1个数相等则为素数
   if (count1 == (num2 - 1) {
    System.out.println("质数: " + i);
    count2++;
   }
   //找到素数后count1再初始化为0
   count1 = 0;
  }
  // 统计素数个数
  System.out.println("质数个数:count2= "+count2);
 }
}

以上为个人经验希望能给大家一个参考也希望大家多多支持。


相关文章

猜您喜欢

  • TensorFlow2前向传播 详解TensorFlow2实现前向传播

    想了解详解TensorFlow2实现前向传播的相关内容吗我是小白呀在本文为您仔细讲解TensorFlow2前向传播的相关知识和一些Code实例欢迎阅读和指正我们先划重点:TensorFlow2前向传播,python前向传播下面大家一起来学习吧。..
  • TensorFlow2基本操作 一小时学会TensorFlow2之基本操作2实例代码

    想了解一小时学会TensorFlow2之基本操作2实例代码的相关内容吗我是小白呀在本文为您仔细讲解TensorFlow2基本操作的相关知识和一些Code实例欢迎阅读和指正我们先划重点:TensorFlow2基本操作,python,TensorFlow2下面大家一起来学习吧。..

网友评论

Copyright 2020 www.Shellfishsoft.com 【贝软下载站】 版权所有 软件发布

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 点此查看联系方式