黑马程序员技术交流社区

标题: 打印杨辉三角形 [打印本页]

作者: 小灬清新丶    时间: 2015-7-7 19:30
标题: 打印杨辉三角形
/*
        需求:打印杨辉三角形(行数可以键盘录入)
        1
        1        1
        1        2        1
        1        3        3        1
        1        4        6        4        1
        1        5        10        10        5        1

        分析:看图形的规律
                1.任何一行的第一列和最后一列都是1
                2.从第三行开始,每一个数据是它上一行的前一列
                        和它上一行的本列之和,最后一列除外。

        步骤:
                1。首先定义一个二维数组。行数如果是n,列数也先定义为n
                        这个n的数据来自于键盘录入。
                2.给这个二维数组任何一行的第一列和最后一列赋值为1.
                3,按照规律给其他元素赋值
                4,遍历这个二维数组。
*/
import java.util.Scanner;
class  Array2Test3
{
        public static void main(String[] args)
        {
                //创建键盘录入对象
                Scanner sc = new Scanner(System.in);
                //这个n的数据来自于键盘录入。
                System.out.println("请输入一个数据:");
                int n = sc.nextInt();

                //定义二维数组
                int[][] arr = new int[n][n];
                //给这个二维数组任何一行的第一列和最后一列赋值为1
                for(int x=0;x<arr.length ;x++ )
                {
                        arr[x][0] = 1;//任何一行第一列
                        arr[x][x] = 1;//任何一行的最后一列
                }
                for (int x=2;x<arr.length ;x++ )
                {
                        for (int y=1;y<=x-1;y++ )
                        {
                                arr[x][y] = arr[x-1][y-1] + arr[x-1][y];
                        }
                }
                for(int x=0;x<arr.length ;x++ )
                {
                        for (int y=0;y<=x ;y++ )
                        {       
                                System.out.print(arr[x][y]+"\t");
                        }
                        System.out.println();
                }
                //内循环的变化必须和曾经讲过的99乘法表类似
        }
}
作者: 357955778    时间: 2015-7-7 19:51
学习了!
作者: 何时归来看花开    时间: 2015-7-7 21:36
谢谢了,马上就要学习到这里了
作者: A等待着    时间: 2015-7-7 21:39
认真学习..




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2