<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # Java 程序:檢查阿姆斯特朗數 > 原文: [https://www.programiz.com/java-programming/examples/armstrong-number](https://www.programiz.com/java-programming/examples/armstrong-number) #### 在此程序中,您將學習檢查給定的數字是否為阿姆斯特朗數。 您將通過在 Java 中使用`for`循環和`while`循環學習如何做到這一點。 一個正整數稱為阿姆斯特朗數`n`,如果 ```java abcd... = an + bn + cn + dn + ... ``` 對于 3 位的阿姆斯特朗數,每個數字的立方數之和等于數字本身。 例如: ```java 153 = 1*1*1 + 5*5*5 + 3*3*3 // 153 is an Armstrong number. ``` ## 示例 1:檢查 3 位數字的阿姆斯特朗數 ```java public class Armstrong { public static void main(String[] args) { int number = 371, originalNumber, remainder, result = 0; originalNumber = number; while (originalNumber != 0) { remainder = originalNumber % 10; result += Math.pow(remainder, 3); originalNumber /= 10; } if(result == number) System.out.println(number + " is an Armstrong number."); else System.out.println(number + " is not an Armstrong number."); } } ``` 運行該程序時,輸出為: ```java 371 is an Armstrong number. ``` * 首先,給定數字(`number`)的值存儲在另一個整數變量`originalNumber`中。 這是因為,我們需要在最后比較最終編號和原始編號的值。 * 然后,使用`while`循環循環遍歷`originalNumber`,直到等于 0。 * 在每次迭代中,`number`的最后一位存儲在`remainder`中。 * 然后,使用`Math.pow()`函數將`remainder`加 3(數字位數),并加到`result`上。 * 然后,除以 10 后,從`originalNumber`中刪除最后一位數字。 * 最后,比較`result`和`number`。 如果相等,則為阿姆斯特朗數。 如果不是,則不是。 * * * ## 示例 2:檢查 n 位數字的阿姆斯特朗數 ```java public class Armstrong { public static void main(String[] args) { int number = 1634, originalNumber, remainder, result = 0, n = 0; originalNumber = number; for (;originalNumber != 0; originalNumber /= 10, ++n); originalNumber = number; for (;originalNumber != 0; originalNumber /= 10) { remainder = originalNumber % 10; result += Math.pow(remainder, n); } if(result == number) System.out.println(number + " is an Armstrong number."); else System.out.println(number + " is not an Armstrong number."); } } ``` 運行該程序時,輸出為: ```java 1634 is an Armstrong number. ``` 在此程序中,我們沒有使用`while`循環,而是使用了兩個`for`循環。 第一個`for`循環用于計算數字中的位數。 它是以下形式的壓縮形式: ```java for (;originalNumber != 0; originalNumber /= 10) { n++; } ``` 然后,第二個`for`循環計算`result`,其中在每次迭代中,余數由數字`n`來供電。 訪問此頁面了解如何[顯示兩個時間間隔](/java-programming/examples/armstrong-number-interval "Display all armstrong numbers between two intervals")之間的所有阿姆斯特朗數。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看