dabocaiqq
dabocaiqq
采纳率66.6%
2020-07-09 11:32 阅读 98

高分悬赏:Java语言怎么输出如下的三角形

20

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

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • 已采纳
    wojiushiwo945you 毕小宝 2020-07-18 09:33

    杨辉三角最本质的特征是,它的两条斜边都是由数字1组成的,而其余的数则是等于它肩上的两个数之和。

    package algorithm;
    
    
    public class YFTriangle {
          public static void main(String[] args) {
              yh(19);
            }
          /**
           * 它的两条斜边都是由数字1组成的,而其余的数则是等于它肩上的两个数之和。
           * @param in
           */
            public static void yh(int in){
                int[] a = new int[in + 1];
                int previous = 1;
                for (int i = 1; i <= in; i ++){
                    for (int j = 1; j <= i; j++){
                        int current = a[j];
                        a[j] = previous + current;
                        previous = current;
                        System.out.print(a[j] + " ");
                    }
                    System.out.println();
                }
            }
    }
    
    
    点赞 2 评论 复制链接分享
  • Dear_UU MingCode 2020-07-09 16:27

    你好,这是杨辉三角问题:

    public static void main(String[] args) {
            int[][] arr=new int[10][];
            for(int i=0;i<arr.length;i++) {
                arr[i]=new int[i+1];
            }
            for(int i=0;i<arr.length;i++) {
                for(int j=0;j<arr[i].length;j++) {
                    if(j==0 || i==j) {
                        arr[i][j]=1;
                    }else {
                        arr[i][j]=arr[i-1][j]+arr[i-1][j-1];
                    }
                }
            }
            for(int i=0;i<arr.length;i++) {
                for(int j=0;j<arr[i].length;j++) {
                    System.out.print(arr[i][j]+"\t");
                }
                System.out.println();
            }
        }
    
    点赞 评论 复制链接分享
  • wzy_168 Happywzy~ 2020-07-09 16:51
    public static void main(String[] args) {
            int n = 7;
            int[][] a = new int[n][n];
            for (int i = 0; i < n; i++) {
                for (int j = 0; j < n; j++) {
                    if (j == 0 || j == i) a[i][j] = 1;
                    if (i > 0 && j > 0) {
                        a[i][j] = a[i-1][j-1] +a[i-1][j];
                    }
                }
            }
            for (int i = 0; i < n; i++) {
                for (int j = 0; j <= i; j++) {
                    System.out.print(a[i][j] + " ");
                }
                System.out.println();
            }
        }
    
    点赞 评论 复制链接分享
  • kingwolf_JavaScript 浴火_凤凰 2020-07-10 13:32
    public class YHSJ_1 {
    
        public static void main(String[] args) {
            int rows = 10;
    
            for (int i = 0; i < rows; i++) {
                int number = 1;
                // 打印空格字符串
                System.out.format("%" + (rows - i) * 2 + "s", "");
                for (int j = 0; j <= i; j++) {
                    System.out.format("%4d", number);
                    number = number * (i - j) / (j + 1);
                }
                System.out.println();
            }
        }
    }
    
    点赞 评论 复制链接分享

相关推荐