Java 展示 杨辉三角

题目: 实现杨辉三角。

1、理清思路,用 二维数组 展示模型。

2、解析三角:

               2.1 第 n 行有 n 个数字

               2.2 每行的第一个数字和最后一个数字均为 1

               2.3 第 i 行的第 j 个数字的值 = i-1 行的第 j-1 个值  +  第 i-1 行的第 j 个值

                     例如: 第6行的第3个数(10)= 第5行的第2个数(4)  +   第5行的第3个数(6)

3、结合1与2开始写代码~

               3.1 框架:

import java.util.Scanner;

public class TestYangHui{
	
	
    public static void main(String[] args){
		
        System.out.print("请输入杨辉三角的行数(n):");
        Scanner input=new Scanner(System.in);
        int n=input.nextInt();            
        int[][] array=new int[n][n];        //创建一个二维数组,高维长度与低维长度均为 n 。

        for(int i=0;;){        //行
            for(int j=0;;){    //列
                //代码
            System.out.print(array[i][j]+"\t");
            }
        System.out.println();            
        }
    }
}

               

               3.2 结合上文2.2与2.3的内容补全代码:

import java.util.Scanner;

public class TestYangHui{
	
	
    public static void main(String[] args){
		
        System.out.print("请输入杨辉三角的行数(n):");
        Scanner input=new Scanner(System.in);
        int n=input.nextInt();            
        int[][] array=new int[n][n];        //创建一个二维数组,高维长度与低维长度均为 n 。

        for(int i=0;i<n;i++){    //行:行数应与输入的n相等
            for(int j=0;j<=i;j++){    //列:注意列数是逐行增加的!
                if(j==0 || j==i){
                    array[i][j]=1;    //实现2.2
                }else{
                    array[i][j]=array[i-1][j-1]+array[i-1][j];    //实现2.3
                }
                System.out.print(array[i][j]+"\t");
            }
            System.out.println();
        }
    }
}

 完成!

发布了8 篇原创文章 · 获赞 3 · 访问量 515

猜你喜欢

转载自blog.csdn.net/Dukeo00o/article/details/104300962