欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java如何判斷一個(gè)數(shù)是否是素?cái)?shù)(質(zhì)數(shù))

 更新時(shí)間:2021年09月03日 15:26:58   作者:幻影寒狼  
這篇文章主要介紹了java如何判斷一個(gè)數(shù)是否是素?cái)?shù)(質(zhì)數(shù)),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

java判斷一個(gè)數(shù)是否是素?cái)?shù)(質(zhì)數(shù))

質(zhì)數(shù)(prime number)又稱素?cái)?shù),有無(wú)限個(gè)

質(zhì)數(shù)定義為在大于1的自然數(shù)中,除了1和它本身以外不再有其他因數(shù),這樣的數(shù)稱為質(zhì)數(shù)。

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("請(qǐng)輸入一個(gè)正整數(shù)");
  int num = sc.nextInt();
  if (num > 0) {
   int k = (int) Math.sqrt(num);//k為num的正平方根,取整數(shù)
   for (int i = 2; i <= k; i++) {
    if (num % i == 0) {
     isPrime = false;//不是素?cái)?shù)
     break;
    }
   }
  }
  if (isPrime) {
   System.out.println(num + "是素?cái)?shù)");
  } else {
   System.out.println(num + "不是素?cái)?shù)");
  }
 }
}

輸出1~1000之間的素?cái)?shù)

思路

偶數(shù)肯定不是素?cái)?shù),所以遞增的時(shí)候可以以奇數(shù)的形式遞增,再在奇數(shù)中去掉非質(zhì)數(shù)的數(shù)。

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的正平方根,取整數(shù)
   isPrime = true;
   for (int j = 2; j <= k; j++) {
    if (i % j == 0) {
     isPrime = false;//不是素?cái)?shù)
     break;
    }
   }
   if (isPrime) {
    PrimeCount++;
    System.out.print(i+"\t");
    if(PrimeCount%5==0){
     System.out.println();
    }
   }
  }
 }
}

java 求1-100之間的質(zhì)數(shù)

質(zhì)數(shù)定義:

質(zhì)數(shù)又稱素?cái)?shù)。一個(gè)大于1的自然數(shù),除了1和它自身外,不能被其他自然數(shù)整除的數(shù)叫做質(zhì)數(shù);否則稱為合數(shù)。

如:2,3,5,7,11…

1、質(zhì)數(shù)實(shí)例一

//1-100之間的質(zhì)數(shù)--------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("質(zhì)數(shù):i= "+i);   
   }
  }  
 }
}

2、質(zhì)數(shù)實(shí)例二

//1-100之間的質(zhì)數(shù)--------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("質(zhì)數(shù):i= "+i);     
                }    
            }
        }
    }
}  

3、質(zhì)數(shù)實(shí)例三

//1-100之間的質(zhì)數(shù)--------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("質(zhì)數(shù):i= "+i);         
            }
        }
    }
}

4、質(zhì)數(shù)實(shí)例四

//1-100之間的質(zhì)數(shù)--------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("質(zhì)數(shù):i= "+i);                   
            } 
        }
 } 
} 

5、質(zhì)數(shù)實(shí)例五

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("質(zhì)數(shù):i= "+i);
    count++;     
   } 
  }
  System.out.println("質(zhì)數(shù)個(gè)數(shù):count= "+count);
    }
}

6、質(zhì)數(shù)實(shí)例六

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) {
     //不能被整除累計(jì)一次
     count1++;
    }
   }
   // 轉(zhuǎn)為int的類型
   int num2 = (int) Math.sqrt(i);
   //如果累計(jì)次數(shù)num2 - 1個(gè)數(shù)相等則為素?cái)?shù)
   if (count1 == (num2 - 1) {
    System.out.println("質(zhì)數(shù): " + i);
    count2++;
   }
   //找到素?cái)?shù)后count1再初始化為0
   count1 = 0;
  }
  // 統(tǒng)計(jì)素?cái)?shù)個(gè)數(shù)
  System.out.println("質(zhì)數(shù)個(gè)數(shù):count2= "+count2);
 }
}

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringCloudGateway使用Skywalking時(shí)日志打印traceId解析

    SpringCloudGateway使用Skywalking時(shí)日志打印traceId解析

    這篇文章主要為大家介紹了SpringCloudGateway使用Skywalking時(shí)日志打印traceId解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • 最新評(píng)論