最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Java打印出10行的楊輝三角形的完整代碼

 更新時間:2026年03月17日 09:23:58   作者:牛肉胡辣湯  
楊輝三角形是一個非常經(jīng)典的數(shù)學(xué)圖形,它在組合數(shù)學(xué)中有著重要的地位,每個數(shù)是它左上方和右上方的數(shù)的和(除了邊界上的數(shù)),本文將通過Java語言實現(xiàn)一個簡單的程序來打印出10行的楊輝三角形,需要的朋友可以參考下

前言

楊輝三角形是一個非常經(jīng)典的數(shù)學(xué)圖形,它在組合數(shù)學(xué)中有著重要的地位。每個數(shù)是它左上方和右上方的數(shù)的和(除了邊界上的數(shù))。本文將通過Java語言實現(xiàn)一個簡單的程序來打印出10行的楊輝三角形。

楊輝三角形的定義

楊輝三角形的特點:

  • 每一行的第一個和最后一個數(shù)字都是1。
  • 從第三行開始,每個數(shù)字等于上一行的兩個相鄰數(shù)字之和。

實現(xiàn)思路

  1. 創(chuàng)建一個二維數(shù)組來存儲楊輝三角形的值。
  2. 初始化第一列和對角線上的元素為1。
  3. 根據(jù)楊輝三角形的規(guī)則填充其他位置的值。
  4. 打印二維數(shù)組中的值,形成楊輝三角形。

Java代碼實現(xiàn)

public class YangHuiTriangle {
    public static void main(String[] args) {
        int numRows = 10; // 定義楊輝三角形的行數(shù)
        printYangHuiTriangle(numRows);
    }
    public static void printYangHuiTriangle(int numRows) {
        int[][] triangle = new int[numRows][numRows];
        // 填充楊輝三角形
        for (int i = 0; i < numRows; i++) {
            triangle[i][0] = 1; // 每一行的第一個元素
            triangle[i][i] = 1; // 每一行的最后一個元素
            for (int j = 1; j < i; j++) {
                triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
            }
        }
        // 打印楊輝三角形
        for (int i = 0; i < numRows; i++) {
            for (int j = 0; j <= i; j++) {
                System.out.print(triangle[i][j] + " ");
            }
            System.out.println();
        }
    }
}

運行結(jié)果

運行上述Java程序,將得到以下輸出:

1 
1 1 
1 2 1 
1 3 3 1 
1 4 6 4 1 
1 5 10 10 5 1 
1 6 15 20 15 6 1 
1 7 21 35 35 21 7 1 
1 8 28 56 70 56 28 8 1 
1 9 36 84 126 126 84 36 9 1

楊輝三角形是一個經(jīng)典的數(shù)學(xué)結(jié)構(gòu),每一行的數(shù)字都是上一行相鄰兩個數(shù)字之和。下面是一個使用Java編寫的示例代碼,用于打印出10行的楊輝三角形:

public class YangHuiTriangle {
    public static void main(String[] args) {
        int rows = 10; // 打印10行
        printYangHuiTriangle(rows);
    }

    public static void printYangHuiTriangle(int rows) {
        // 創(chuàng)建一個二維數(shù)組來存儲楊輝三角形的值
        int[][] triangle = new int[rows][rows];

        // 填充楊輝三角形的值
        for (int i = 0; i < rows; i++) {
            triangle[i][0] = 1; // 每一行的第一個元素為1
            triangle[i][i] = 1; // 每一行的最后一個元素為1

            // 計算中間的值
            for (int j = 1; j < i; j++) {
                triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
            }
        }

        // 打印楊輝三角形
        for (int i = 0; i < rows; i++) {
            // 打印空格以對齊三角形
            for (int k = 0; k < rows - i - 1; k++) {
                System.out.print("   ");
            }

            for (int j = 0; j <= i; j++) {
                System.out.printf("%5d", triangle[i][j]);
            }
            System.out.println();
        }
    }
}

代碼解釋:

  1. 定義主類和主方法:??YangHuiTriangle?? 類包含 ??main?? 方法,作為程序的入口。
  2. 定義打印方法:??printYangHuiTriangle?? 方法用于生成并打印楊輝三角形。
  3. 創(chuàng)建二維數(shù)組:??triangle?? 數(shù)組用于存儲楊輝三角形的值。
  4. 填充數(shù)組
  • 每一行的第一個和最后一個元素設(shè)置為1。
  • 中間的元素通過上一行的相鄰兩個元素相加得到。
  1. 打印數(shù)組
  • 使用嵌套循環(huán)打印楊輝三角形。
  • 外層循環(huán)控制行數(shù),內(nèi)層循環(huán)控制每行的元素。
  • 打印前的空格用于對齊三角形。

運行上述代碼后,你將看到如下輸出:

1
                       1     1
                    1     2     1
                 1     3     3     1
              1     4     6     4     1
           1     5    10    10     5     1
        1     6    15    20    15     6     1
     1     7    21    35    35    21     7     1
  1     8    28    56    70    56    28     8     1
1     9    36    84   126   126    84    36     9     1

楊輝三角形是一個經(jīng)典的數(shù)學(xué)問題,它每一行的數(shù)字都是上一行相鄰兩個數(shù)字之和。下面我將詳細(xì)介紹如何使用Java來實現(xiàn)打印10行的楊輝三角形。

1. 理解楊輝三角形的結(jié)構(gòu)

楊輝三角形的特點:

  • 第n行有n個數(shù)字。
  • 每一行的第一個和最后一個數(shù)字都是1。
  • 從第3行開始,每個數(shù)字等于它上方兩個數(shù)字之和。

2. Java代碼實現(xiàn)

public class YangHuiTriangle {
    public static void main(String[] args) {
        int numRows = 10; // 打印10行
        printYangHuiTriangle(numRows);
    }

    public static void printYangHuiTriangle(int numRows) {
        // 創(chuàng)建一個二維數(shù)組來存儲楊輝三角形的值
        int[][] triangle = new int[numRows][numRows];

        // 填充楊輝三角形的值
        for (int i = 0; i < numRows; i++) {
            triangle[i][0] = 1; // 每一行的第一個元素是1
            triangle[i][i] = 1; // 每一行的最后一個元素是1

            for (int j = 1; j < i; j++) {
                triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
            }
        }

        // 打印楊輝三角形
        for (int i = 0; i < numRows; i++) {
            for (int j = 0; j <= i; j++) {
                System.out.print(triangle[i][j] + " ");
            }
            System.out.println();
        }
    }
}

3. 代碼解釋

  1. 定義主類和主方法
public class YangHuiTriangle {
    public static void main(String[] args) {
        int numRows = 10; // 打印10行
        printYangHuiTriangle(numRows);
    }
}

這里定義了一個主類 ??YangHuiTriangle?? 和主方法 ??main??,在主方法中調(diào)用了 ??printYangHuiTriangle?? 方法來打印10行的楊輝三角形。

  1. 創(chuàng)建二維數(shù)組并填充楊輝三角形的值
public static void printYangHuiTriangle(int numRows) {
    int[][] triangle = new int[numRows][numRows];

    for (int i = 0; i < numRows; i++) {
        triangle[i][0] = 1; // 每一行的第一個元素是1
        triangle[i][i] = 1; // 每一行的最后一個元素是1

        for (int j = 1; j < i; j++) {
            triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
        }
    }
}
  • 創(chuàng)建一個 ??numRows x numRows?? 的二維數(shù)組 ??triangle?? 來存儲楊輝三角形的值。
  • 使用兩層循環(huán)來填充數(shù)組:
  • 外層循環(huán) ??i?? 遍歷每一行。
  • 內(nèi)層循環(huán) ??j?? 遍歷每一行的每一個元素。
  • 每一行的第一個和最后一個元素設(shè)置為1。
  • 其他元素的值等于它上方兩個元素之和。
  1. 打印楊輝三角形
for (int i = 0; i < numRows; i++) {
    for (int j = 0; j <= i; j++) {
        System.out.print(triangle[i][j] + " ");
    }
    System.out.println();
}
  • 使用兩層循環(huán)來打印二維數(shù)組中的值。
  • 外層循環(huán) ??i?? 遍歷每一行。
  • 內(nèi)層循環(huán) ??j?? 遍歷每一行的每一個元素,并打印出來。
  • 每打印完一行后,換行。

4. 運行結(jié)果

運行上述代碼,你將得到以下輸出:

1 
1 1 
1 2 1 
1 3 3 1 
1 4 6 4 1 
1 5 10 10 5 1 
1 6 15 20 15 6 1 
1 7 21 35 35 21 7 1 
1 8 28 56 70 56 28 8 1 
1 9 36 84 126 126 84 36 9 1

這就是使用Java打印10行楊輝三角形的完整代碼和解釋。希望對你有所幫助!如果有任何問題或需要進(jìn)一步的解釋,請隨時告訴我。

以上就是使用Java打印出10行的楊輝三角形的詳細(xì)內(nèi)容,更多關(guān)于Java打印楊輝三角形的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Java 的ArrayList集合底層實現(xiàn)與最佳實踐

    Java 的ArrayList集合底層實現(xiàn)與最佳實踐

    本文主要介紹了Java的ArrayList集合類的核心概念、底層實現(xiàn)、關(guān)鍵成員變量、初始化機制、容量演變、擴(kuò)容機制、性能分析、核心方法源碼解析、特殊場景與常見問題、性能優(yōu)化與最佳實踐以及與LinkedList的對比,感興趣的朋友跟隨小編一起看看吧
    2025-11-11
  • Java創(chuàng)建線程池為什么一定要用ThreadPoolExecutor

    Java創(chuàng)建線程池為什么一定要用ThreadPoolExecutor

    本文介紹了Java創(chuàng)建線程池為什么一定要用ThreadPoolExecutor,手動方式使用ThreadPoolExecutor創(chuàng)建線程池和使用Executors執(zhí)行器自動創(chuàng)建線程池,下文更多相關(guān)內(nèi)容需要的小伙伴可以參考一下
    2022-05-05
  • SpringBoot3.x集成nacos并實現(xiàn)多環(huán)境配置的操作步驟

    SpringBoot3.x集成nacos并實現(xiàn)多環(huán)境配置的操作步驟

    本文詳細(xì)介紹了如何在Springboot3.x中集成Nacos2.x版本,包括nacos的安裝、配置更改,以及在集成過程中遇到的問題,如端口設(shè)置、依賴版本調(diào)整等,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2024-10-10
  • Java?Guava異步編程實踐

    Java?Guava異步編程實踐

    今天咱們要聊的是Guava在異步編程中的應(yīng)用,讓我們搞清楚為什么要用Guava來處理異步任務(wù),在Java的世界里,異步編程是個老話題了,但它依舊非常關(guān)鍵,它能讓咱們的應(yīng)用更高效,尤其是在處理那些耗時的I/O操作
    2023-12-12
  • Spring的@Transactional嵌套解讀

    Spring的@Transactional嵌套解讀

    本文通過詳細(xì)測試,探究了Spring的@Transactional注解在事務(wù)嵌套和局部回滾場景下的行為表現(xiàn),文中通過多個測試案例,闡述了不同傳播行為(如REQUIRES_NEW)對事務(wù)嵌套處理的影響,以及rollbackFor屬性在異常管理中的作用和限制,通過實驗總結(jié)
    2024-11-11
  • 基于Java編寫第一個區(qū)塊鏈項目

    基于Java編寫第一個區(qū)塊鏈項目

    區(qū)塊鏈?zhǔn)欠植际綌?shù)據(jù)存儲、點對點傳輸、共識機制、加密算法等計算機技術(shù)的新型應(yīng)用模式,下面這篇文章主要給大家介紹了基于Java實現(xiàn)區(qū)塊鏈的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • Centos7安裝JDK1.8詳細(xì)過程實戰(zhàn)記錄

    Centos7安裝JDK1.8詳細(xì)過程實戰(zhàn)記錄

    這篇文章主要給大家介紹了關(guān)于Centos7安裝JDK1.8的相關(guān)資料,文中通過圖文以及實例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2022-09-09
  • Java分治法與二分搜索算法實例分析

    Java分治法與二分搜索算法實例分析

    這篇文章主要介紹了Java分治法與二分搜索算法,簡單講述了分治法與二分搜索算法的原理并結(jié)合java實例分析了二分搜索算法的實現(xiàn)與使用技巧,需要的朋友可以參考下
    2017-11-11
  • 基于java實現(xiàn)人機猜拳游戲

    基于java實現(xiàn)人機猜拳游戲

    這篇文章主要為大家詳細(xì)介紹了基于java實現(xiàn)人機猜拳游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-12-12
  • 如何重寫hashcode和equals方法

    如何重寫hashcode和equals方法

    這篇文章主要介紹了如何重寫hashcode和equals方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06

最新評論

萨嘎县| 和平县| 大冶市| 和顺县| 松溪县| 新昌县| 沿河| 宽城| 清镇市| 大邑县| 法库县| 沧州市| 龙门县| 芜湖县| 白银市| 广南县| 高邮市| 中江县| 临猗县| 确山县| 丹东市| 澄迈县| 乌拉特前旗| 将乐县| 巫山县| 长治县| 阳朔县| 合水县| 平定县| 呼玛县| 尉氏县| 上蔡县| 涟源市| 保靖县| 五华县| 年辖:市辖区| 鲁甸县| 通榆县| 鸡西市| 明水县| 丹东市|