2014-11-13 4 views
2

Это моя первая публикация ... Я работаю над созданием метода создания Треугольника Паскаля. Кажется, я не могу заставить его инициализировать правильные значения, хотя это была печать в формате, который должен был быть. Если кто-то может мне точку в правильном направлении, что было бы здорово ...Pascal's Triangle Java

public static int[][] createPascalsTriangle(final int n) 
{ 
    if(n < 0) 
    throw new RuntimeException("Invalid Number."); 

    int[][]pascal = new int [n][]; 

    for(int x = 0; x < pascal.length; x++) 
    pascal[x] = new int[x + 1]; 

    pascal[0][0] = 1; 

    for(int i = 0; i < pascal.length; i++) 
    { 
    for(int j = 1; j < pascal[i].length - 1; j++) 
    { 
     if(i > 0) 
     { 
      if(j==0 || j == (pascal[i].length)-1) 
       pascal[i][j] = 1; 
      else 
       pascal[i][j] = pascal[i-1][j] + pascal[i-1][j-1]; 
     } 
    } 


    } 
    return pascal;  
}//end createPascalsTriangle 

`

ответ

2

Вы должны инициализировать все 1 первый:

Вместо

pascal[0][0] = 1; 

принять

for (int x = 0; x < n; x++) { 
    pascal[x][0] = 1; 
    pascal[x][x] = 1; 
} 

Надеюсь, что смогу помочь!

Edit:

У меня нет нигде, чтобы написать это, и я новичок в этом, но как-то я получаю такие возбужден думать о ком-то за тысячи километров, сидя в его/ее комнату, и получить рельеф только по битам, я отправляю этого человека на монитор. Что касается меня, я надеюсь, что никогда не потеряю это стремление, становящееся более старым, поскольку помогать другим делать свой смысл в жизни.

Просто хотел снять с меня эту нагрузку, потому что уже три часа ночи здесь, в Германии, и я устаю от своей домашней работы. Позаботьтесь о себе!