国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

判斷一個數(shù)是否是素數(shù)(Java版)

這篇具有很好參考價值的文章主要介紹了判斷一個數(shù)是否是素數(shù)(Java版)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

素數(shù)的定義

求解素數(shù)

素數(shù)判定法1:

遍歷從2到n-1的所有數(shù)字,判斷是否有可以被n整除的數(shù),如果沒有,則為素數(shù)。

優(yōu)化法2:

判定的范圍改為[2 -,n/2]。當(dāng) i>n/2 時,則判定為素數(shù)。

優(yōu)化法3:

在Java中判定素數(shù)的范圍也可以到sqrt(n),(對n開平方)。對應(yīng)的函數(shù)為:Math.sqrt(n)


素數(shù)的定義

素數(shù)又稱質(zhì)數(shù),一個大于1的自然數(shù),除了1和它自身外,不能被其他自然數(shù)整除的數(shù)叫做素數(shù),否則稱為合數(shù)(規(guī)定1既不是素數(shù)也不是合數(shù))。

求解素數(shù)

素數(shù)判定法1:

遍歷從2到n-1的所有數(shù)字,判斷是否有可以被n整除的數(shù),如果沒有,則為素數(shù)。

import java.util.Scanner;
public class HomeWork {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("請輸入要判斷的數(shù)字:");
        int n = sc.nextInt();
        int i = 0;

        for ( i = 2; i <= n-1 ; i++) {
            if(n % i == 0){
                System.out.println(n+"不是素數(shù)");
                break;
            }
        }
        if(i == n){
            System.out.println(n+"是素數(shù)");
        }
    }
}

法1中的循環(huán)條件比較浪費時間,下面進行對代碼的優(yōu)化。

優(yōu)化法2:

判定的范圍改為[2 -,n/2]。當(dāng) i>n/2 時,則判定為素數(shù)。

import java.util.Scanner;
public class HomeWork {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("請輸入要判斷的數(shù)字:");
        int n = sc.nextInt();
        int i = 0;

        for ( i = 2; i <= n/2 ; i++) {
            if(n % i == 0){
                System.out.println(n+"不是素數(shù)");
                break;
            }
        }
        if(i > n/2){
            System.out.println(n+"是素數(shù)");
        }
    }
}

優(yōu)化法3:

在Java中判定素數(shù)的范圍也可以到sqrt(n),(對n開平方)。對應(yīng)的函數(shù)為:Math.sqrt(n)

import java.util.Scanner;

public class HomeWork {

    public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("請輸入要判斷的數(shù)字:");
            int n = sc.nextInt();
            int i = 2;
            for(;i <= Math.sqrt(100);i++){
                if(n % i == 0){
                    System.out.println(n+"不是素數(shù)");
                    break;
                }
            }
            if(i >Math.sqrt(n)){
                System.out.println(n+"是素數(shù)");
            }
    }
}

注意:判斷是素數(shù)的條件是在for循環(huán)的外面,不能把它放到循環(huán)里。文章來源地址http://www.zghlxwxcb.cn/news/detail-604976.html

到了這里,關(guān)于判斷一個數(shù)是否是素數(shù)(Java版)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 超級詳細用C語言判斷一個數(shù)是否是素數(shù)

    先上代碼: #include stdio.h int main() {?? ? ?? ?int n,i; ?? ?printf(\\\"請輸入一個數(shù): \\\"); ?? ?scanf(\\\"%d\\\",n); ?? ?for(i=2;in;i++){ ?? ??? ?if(n%i==0){ ?? ??? ??? ?break; ?? ??? ?} ?? ?} ?? ?if(n==i){ ?? ??? ?printf(\\\"是素數(shù)\\\"); ?? ?} ?? ?else ?? ??? ?printf(\\\"不是素數(shù)\\\"); } 理解: 素數(shù)

    2024年02月08日
    瀏覽(19)
  • C語言:判斷一個數(shù)是否為素數(shù)(3種方法,含注釋)

    首先要先明白素數(shù)的定義:除了1和本身之外,沒有其他的因數(shù)的數(shù),即不能被其他數(shù)整除。 同時要注意,1不是素數(shù)。 以下為判斷素數(shù)的3個代碼: 1.要注意給m賦初值是不能為1,因為1是任何數(shù)的因數(shù),可以被任何數(shù)整除。若初值為1,則第一步就結(jié)束循環(huán),所有的數(shù)輸出結(jié)果

    2024年02月13日
    瀏覽(23)
  • C語言判斷一個數(shù)是否為素數(shù)的三種方法(詳細)

    ? ? ? ???今天我們來使用C語言來實現(xiàn)判斷一個數(shù)是否為素數(shù),首先我們需要了解到素數(shù)的概念,素數(shù)就是只能被1和它本身整除的數(shù)。 ??? ? ? ? ? 這是第一種代碼,我們來分析一下,首先創(chuàng)建變量i和n,這里我們i用于循環(huán),n用來存放我們輸入的數(shù)字。之后我們設(shè)置一個

    2024年04月25日
    瀏覽(21)
  • C語言--編寫函數(shù)判斷一個數(shù)是否為素數(shù),在主函數(shù)中調(diào)用該函數(shù)輸出100以內(nèi)的全部素數(shù)。
  • Java 判斷一個數(shù)是否是回文數(shù)(parlindrome)

    回文數(shù) :從左往右讀和從右往左讀完全相同的數(shù),如121、12321是回文數(shù),12345不是。 思路 :分別獲取到原數(shù)字的每一位,反過來組成一個新的數(shù),和原數(shù)字比較,若相同則是回文數(shù)。 代碼 : 關(guān)鍵 : %10獲取最后一位,之后將數(shù)字/10來去掉這一位,如123%10,得到最后一位3,之

    2024年04月12日
    瀏覽(23)
  • java判斷字符串是否包含英文,以及英文個數(shù)

    在Java中,可以使用正則表達式或字符遍歷的方式來判斷字符串是否包含英文字符,并統(tǒng)計英文字符的個數(shù)。 使用正則表達式判斷字符串是否包含英文字符: 這里的正則表達式 “.[a-zA-Z]+.” 表示匹配包含至少一個英文字符的字符串。containsEnglish 的值為 true 表示字符串包含英

    2024年02月13日
    瀏覽(100)
  • C++判斷一個數(shù)是否為回文數(shù)的算法

    C++判斷一個數(shù)是否為回文數(shù)的算法 回文數(shù)是指正序(從左向右)和倒序(從右向左)讀都相同的整數(shù)。在C++中,我們可以使用算法來判斷一個數(shù)是否為回文數(shù)。下面是一個詳細的解釋和相應(yīng)的源代碼。 算法思路: 將給定的整數(shù)轉(zhuǎn)換成字符串。 使用雙指針法來檢查字符串的左

    2024年02月06日
    瀏覽(19)
  • Java中判斷對象是否為空的方法詳解

    在Java編程中,經(jīng)常會遇到判斷對象是否為空的情況??罩羔槷惓J浅R姷某绦蝈e誤之一,因此在編碼過程中,判斷對象是否為空是一個重要的防御措施。本篇博客將深入探討Java中判斷對象是否為空的不同方法,包括使用條件判斷、使用Java 8的Optional類、使用Apache Commons Lang庫

    2024年02月13日
    瀏覽(100)
  • 【華為機試真題詳解JAVA實現(xiàn)】—判斷兩個IP是否屬于同一子網(wǎng)

    【華為機試真題詳解JAVA實現(xiàn)】—判斷兩個IP是否屬于同一子網(wǎng)

    ? ? 目錄 一、題目描述 二、解題代碼 IP地址是由4個0-255之間的整數(shù)構(gòu)成的,用\\\".\\\"符號相連。 二進制的IP地址格式有32位,例如:10000011,01101011,00000011,00011000;每八位用十進制表示就是131.107.3.24 子網(wǎng)掩碼是用來判斷任意兩臺計算機的IP地址是否屬于同一子網(wǎng)絡(luò)的根據(jù)。 子網(wǎng)

    2023年04月09日
    瀏覽(38)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包