java实现:判断是否是素数
生活随笔
收集整理的這篇文章主要介紹了
java实现:判断是否是素数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
何為素數?
只能被1和他本身整除的數叫素數?反之叫?合數?,素數沒有因數 ,合數有因數(且成對出現)? ?
有3中實現方式:數n
//方法一
public class text {public static void main(String[] args) {Scanner cin= new Scanner(System.in);System.out.println("請依次輸入數字");while(cin.hasNext()){int n=cin.nextInt();boolean flag=true;for (int i=2;i<n;i++){if (n%i==0){ //n=6時候, 6 % 2=0 6能被2整除flag=false;break;}}if(flag){System.out.println("是素數");}else{System.out.println("不是素數");}}}
} //方法二
public class text {public static void main(String[] args) {Scanner cin= new Scanner(System.in);System.out.println("請依次輸入數字");while(cin.hasNext()){int n=cin.nextInt();boolean flag=true;for (int i=2;i<=n/2;i++){ //如果是i<n/2 eg:n=4, 循環i=2,i<2 否,不進入循環if (n%i==0){flag=false;break;}}if(flag){System.out.println("是素數");}else{System.out.println("不是素數");}}}
}
//方法三
public class text {public static void main(String[] args) {Scanner cin= new Scanner(System.in);System.out.println("請依次輸入數字");while(cin.hasNext()){int n=cin.nextInt();boolean flag=true;for (int i=2;i<=Math.sqrt(n);i++){ //如果是i<Math.sqrt(n) n=4時候,循環i=2,i<2 否,不進入循環if (n%i==0){flag=false;break;}}if(flag){System.out.println("是素數");}else{System.out.println("不是素數");}}}
}
| i=2, 循環到n-1 | |
| i=2,?循環到 n/2 | 如果有因數,因數最大也只能是小于?它的二分之一 |
| i=2,循環到?根號n | 如果有因數,一個小于根號n,一個大于根號n? |
總結
以上是生活随笔為你收集整理的java实现:判断是否是素数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 视频传输的方式有哪些?
- 下一篇: H265H264视频流播放