回 帖 发 新 帖 刷新版面

主题:还有就是关于二维数组的杨辉三角是怎么算出来的

{public static void main (string args[])
{int i,j;
 int yhlevel=10;
 int yanghui[][];
 system.out.println("yang hui san jiao xing:");
 yanghui=new int[yhlevel][];
 for(i=0;i<yanghui.length;i++)
    yanghui[i]=new int[i+1];
    yanghui[0][0]=1;
   [color=FF0000]for(i=1;i<yanghui.length;i++)
    {yanghui[i][0]=1;
     for(j=1;j<yanghui[i].length-1;j++)
          yanghui[i][j]=yanghui[i-1][j-1]+yanghui[i-1][j];
          yanghui[i][yanghui[i].length-1]=1;
     }[/color]  for(i=1;i<yanghui.length;i++)
     {for(j=1;j<yanghui[i].length;j++)
      system.out.print(yanghui[i][j]+"");
      system.out.println();
      }
      }
      }
}
这里到底是怎样进行运算得出结果。

回复列表 (共1个回复)

沙发

这也是一个杨辉三角形程序,帮助你理解你那个程序:

public class yanghui
{
    public static void main(String[] args)
    
    {
        int i,j;
        int a[][]=new int[11][11];   //定义一个数组
        for(i=1;i<11;i++)           //数组中的每个元素赋值勤1
        {
            a[i][i]=1;
            a[i][0]=1;
        }
        for(i=3;i<11;i++)     //从第三行开始进行增加
        for(j=2;j<=i-1;j++)
                /*在该程序中除了第一个元素和最后一个元素外,每个元素都是上行对
                 *应元素和其次左边元素的和,即a[i][j]=a[i-1][j-1]+a[i-1][j];
                 */
        a[i][j]=a[i-1][j-1]+a[i-1][j];
        
        for(i=1;i<=11;i++) //输出结果
        {
            for(j=1;j<=1;j++)
            System.out.println(a[i][j]+"");
            System.out.println("\n");
        }
                    System.out.println("\n");

    }
}

我来回复

您尚未登录,请登录后再回复。点此登录或注册