java打印杨辉三角

来源:互联网 发布:淘宝直通车打击同行 编辑:程序博客网 时间:2024/05/16 12:28
public static void main(String[] args) {//矩阵大小final int num = 5;System.out.println("矩阵大小:" + num);int[][] ints = new int[num][num];Integer max = 0;//根据下标计算矩阵数值for (int i = 0; i < ints.length; i++) {for (int j = 0; j <= i; j++) {if(j==0){ints[i][j] = 1;}else {ints[i][j] = ints[i - 1][j - 1] +  ints[i - 1][j];}//获取最大的数if(ints[i][j] > max){max = ints[i][j];}}}//输出矩阵Integer count = 0;for (int i = 0; i < ints.length; i++) {for (int j = 0; j < ints.length; j++) {count = ints[i][ints[i].length - j - 1];if(count > 0){//输出值System.out.print(count);//数字补位数:最大数的长度 - 当前数长度 + (最大数的长度是偶数+0,奇数+1)count = max.toString().length() - count.toString().length() + (max.toString().length() % 2 == 1 ? 0 : 1);do {System.out.print(" ");} while (count-- > 0);}else{//0占位符数:最大数的长度一半,向上取整count = (max.toString().length() / 2);do {System.out.print(" ");} while (count-- > 0);}}//换行System.out.println();}}

原创粉丝点击