qq_41920061
pandala_rr
2018-09-26 00:22
采纳率: 33.3%
浏览 1.0k
已采纳

java程序怎么实现直角的杨辉三角?

刚学java,还是菜鸟,求大神指导呀!查了一下百度的,有的写的特别深,根本看不懂,希望大神给个入门级的就好了

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

6条回答 默认 最新

  • caozhy
    已采纳

    杨辉三角有两个办法求值
    一个是从上往下推
    第一行是1
    第二行是1 1
    以下,最左边和最右边都是1,中间每个是对应上面两个的和
    比如第三行是1 (1+1=2) 1
    第四行是1 (1+2=3) (2+1=3) 1
    ...

    另一个是直接根据排列组合中的C m n公式来计算。比如第三行第一个就是C 3 1(3个里面选1个有几个选法),第二个是C 32 (3个里面选2个有几个选法)...

    至于是直角的还是对称的,就看你是不是在最左边加上对应的空格占位了。

    代码参考:https://blog.csdn.net/ky415/article/details/78559829

    点赞 评论
  • guwei4037
    guwei4037 2018-09-26 01:21
    点赞 评论
  • HUANG929
    恩新手 2018-09-26 13:38

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

    点赞 评论
  • JIALIH_H
    JIALIH_H 2018-09-26 16:16

    public class YanghuiTriangleExample {

    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();
    }
    }
    }

    点赞 评论
  • weixin_43166206
    jiangfanla 2018-09-27 01:55

    public class A
    {
    public static void main(String args[])
    {
    int x=10;

    int num[][] = new int[x][x];
    for(int m=0;m<x;m++){
    for(int n=0;n<=m;n++){
    if(n==0||m==n){

    num[m][n]=1;

    }

    else

    num[m][n]=num[m-1][n-1]+num[m-1][n];
    }
    }
    for(int i=0;i<x;i++){
    System.out.print(" ");
    for(int j=x-i;j<=x;j++)
    {
    System.out.print(num[i][x-j]+" ");

    }
    System.out.println();
    }
    }
    }

    点赞 评论
  • chen_tonga
    chen_tonga 2018-09-27 02:09

    给你一个十行的代码

    public class A{

    public static void main(String[] args) {
    int rows = 10;
    for(int i =0;i<rows;i++) {
    int number = 1;
    for(int j=0;j<=i;j++) {
    System.out.format("%4d",number);
    number = number * (i - j) / (j + 1);

    }
    System.out.println();
    }
    }
    }

    图片说明

    点赞 评论

相关推荐