利用java判斷質(zhì)數(shù)的3種方法代碼示例
更新時(shí)間:2023年07月21日 10:42:34 作者:爬樓梯的貓
這篇文章主要給大家介紹了關(guān)于利用java判斷質(zhì)數(shù)的3種方法,在大于1的整數(shù)中,如果只包含1和本身這兩個(gè)約數(shù),就被稱為質(zhì)數(shù)(素?cái)?shù)),文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下
方法一:質(zhì)數(shù)只能被1和它本身整除
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int n = new Scanner(System.in).nextInt();
int i = 2;
for (;i < n;i++){
if (n % i == 0){
System.out.println(n + "不是素?cái)?shù)");
break;
}
}
//將2~(n-1)之間所有整數(shù)都除一遍,以確保其中沒有可以整除的數(shù)
if (i == n){
System.out.println(n + "是素?cái)?shù)");
}
}
}方法二:一個(gè)數(shù)總能寫成“n = a * b”的形式,a和b之間一定有一個(gè)數(shù)不大于n/2
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int n = new Scanner(System.in).nextInt();
int i = 2;
for (;i < n/2;i++){
if (n % i == 0){
System.out.println(n + "不是素?cái)?shù)");
break;
}
}
//將2~(n/2)之間所有整數(shù)都除一遍,以確保其中沒有可以整除的數(shù)
//每一個(gè)整數(shù)都可以看做有兩個(gè)數(shù)相乘得到,且每一個(gè)整數(shù)不會(huì)超過原整數(shù)的一半,除了原整數(shù)本身
if (i > n/2){
System.out.println(n + "是素?cái)?shù)");
}
}
}方法三:每一個(gè)整數(shù)都可以看做由兩個(gè)數(shù)相乘得到,且每個(gè)乘數(shù)不大于原整數(shù)的平方根
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int n = new Scanner(System.in).nextInt();
int i = 2;
for (;i <= Math.sqrt(n);i++){
if (n % i == 0){
System.out.println(n + "不是素?cái)?shù)");
break;
}
}
if (i > Math.sqrt(n)){
System.out.println(n + "是素?cái)?shù)");
}
}
}附:判斷1-100所有數(shù)是否為質(zhì)數(shù)
實(shí)現(xiàn)代碼
public class Test5 {
? ? public static void main(String[] args) {
? ? ? ? System.out.println(2 + "這是質(zhì)數(shù)");
? ? ? ? for (int i = 3; i <= 10; i++) {
? ? ? ? ? ? boolean flag = true;
? ? ? ? ? ? for (int j = 2; j < i; j++) {
? ? ? ? ? ? ? ? if (i % j == 0) {
? ? ? ? ? ? ? ? ? ? System.out.println(i + "這不是質(zhì)數(shù)");
? ? ? ? ? ? ? ? ? ? flag = false;
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? ? ? if (flag) {
? ? ? ? ? ? ? ? System.out.println(i + "這是質(zhì)數(shù)");
? ? ? ? ? ? }
? ? ? ? }
? ? }
}實(shí)現(xiàn)結(jié)果

總結(jié)
到此這篇關(guān)于利用java判斷質(zhì)數(shù)的3種方法的文章就介紹到這了,更多相關(guān)java判斷質(zhì)數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java+OpenCV實(shí)現(xiàn)圖片中的人臉識別
這篇文章主要介紹了如何利用java?opencv實(shí)現(xiàn)人臉識別功能,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03
java long轉(zhuǎn)String +Codeforces110A案例
這篇文章主要介紹了java long轉(zhuǎn)String +Codeforces110A案例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09
SpringMVC實(shí)現(xiàn)賬號只能在一處登陸
這篇文章主要為大家詳細(xì)介紹了SpringMVC如何實(shí)現(xiàn)賬號只能在一處登陸,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
Java實(shí)現(xiàn)獲取內(nèi)網(wǎng)的所有IP地址
這篇文章主要介紹了如何利用Java語言實(shí)現(xiàn)獲取內(nèi)網(wǎng)的所有IP地址,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)有一定的參考價(jià)值,快跟隨小編一起學(xué)習(xí)一下吧2022-06-06

