zoukankan      html  css  js  c++  java
  • Java学习(十)

    ·输出一个杨辉三角:

      杨辉三角的性质:

        每行数字左右对称,由1开始逐渐变大,然后变小,回到1。

        第n行的数字个数为n个。

        第n行的数字和为2^(n-1)。

        每个数字等于上一行的左右两个数字之和。可用此性质写出整个杨辉三角形。

        第n行的第一个数为1,第二个数为1*(n-1),第三个数为1*(n-1)*(n-2)/2,第四个数为1*(n-1)*(n-2)/2*(n-3)/3...以此类推。

    public class YangHuiSanJiao {
    
       
    
        public static void main(String[] args) {
    
     
    
          int[][] a = new int[10][10];
    
          for (int i = 0; i < 10; i++) {
    
              a[i][i] = 1;
    
              a[i][0] = 1;
    
          }
    
          for (int i = 2; i < 10; i++) {
    
              for (int j = 1; j < i; j++) {
    
                  a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
    
              }
    
          }
    
     
    
          for (int i = 0; i < 10; i++) {
    
              for (int k = 0; k < 2 * (10 - i) - 1; k++) {
    
                  System.out.print(" ");
    
              }
    
              for (int j = 0; j <= i; j++) {
    
                  System.out.print(a[i][j] + "  ");
    
              }
    
              System.out.println();
    
          }
    
        }
    
    }
    

     ·算法:

        使用一个二维数组yh[][]储存杨辉三角形的数据,行和列的大小为所需要输出的行数。

        使用for循环实验室三角中除了最外层,(不包括底边)的数为1;

        使用语句yh[i][j]=yh[i - 1] + yh[i - 1][j]使第i行第j列的数据等于第(i-1)行第(j-1)列的数据与第(i-1)行第(j)列的数据之和,即每个数字等于上一行的左右两个数字之和。

    ·输出结果如下

     

  • 相关阅读:
    SDN第二次作业
    SDN第一次上机作业
    SDN第一次作业
    alpha冲刺第四天
    alpha冲刺第二天
    alpha冲刺第一天
    项目需求分析
    结对第二次作业
    团队选题报告(i know)
    结对作业——原型设计
  • 原文地址:https://www.cnblogs.com/sheril/p/5754713.html
Copyright © 2011-2022 走看看