Pascal Triangle help

• 05-01-2008, 04:39 PM
Magic101
Pascal Triangle help
hey everyone i am new to Java that's why i need any help i can get.
i need to fill up the function Rows returns ragged array containing the first n rows of Pascal's triangle.
i tried playing around with it but considering i am totally new to this i have no idea if i am doing it right or how it should be implemented. I think i am doing way too much of what needs to be done.

can someone please take a look and based on what's given in the main function right now tell me what Rows should look like...

Code:

```public class Pascal {     public static int[][] Rows(int n){             int[][] pt = new int[n][];             for (int i = 0; i < n; i++) {             pt[i] = new int[i + 1];                            // Construct row i.             pt[i][0] = 1;                              // Leftmost value of row i.             for (int j = 1; j < i; j++) {               pt[i][j] = pt[i - 1][j - 1] + pt[i - 1][j];  // Sum 2 entries above.             }             pt[i][i] = 1;                            // Rightmost value of row i.           }           return pt;     }       public static void main(String[] args) {         if (args.length != 1) {           System.out.println("usage: java " + Pascal.class.getName() + " rows");           System.exit(1);         }         int n = Integer.parseInt(args[0]);         if (n > 0) {           int[][] pascal = Rows(n);           for (int[] row : pascal) {             for (int v : row) System.out.print(v + " ");             System.out.println("");           }         }       } }```

when i try running this of course nothing gets printed except the usage:java message.

thanks a lot :)
• 05-01-2008, 06:21 PM
Zosden
I would use recursion to generate the Fibonacci numbers then just print them out.
• 05-01-2008, 06:46 PM
Magic101
Quote:

Originally Posted by Zosden
I would use recursion to generate the Fibonacci numbers then just print them out.

thanks for response... but would you mind actually showing me how it should be done.. i am clueless oh that part :confused:
Main function stays as it is other functions is the one that needs modification...

thanks.
• 05-01-2008, 07:41 PM
Zosden
Heres a nice template for recursion

Code:

```public <modifier> recusiveAlg(You need some sort of parameter) {     if(some sort of stopping criteria)     {         return something;     }     else     {         return recursiveAlg(your parameter - 1)     } }```
Try to do this with Fibonacci numbers

hint: Fibonacci's numbers are the previous fib number + the one before the pervious fib number.
• 05-01-2008, 07:51 PM
Magic101
Quote:

Originally Posted by Zosden
Heres a nice template for recursion

Code:

```public <modifier> recusiveAlg(You need some sort of parameter) {     if(some sort of stopping criteria)     {         return something;     }     else     {         return recursiveAlg(your parameter - 1)     } }```
Try to do this with Fibonacci numbers

hint: Fibonacci's numbers are the previous fib number + the one before the pervious fib number.

hmmm correct me if i'm wrong but isn't it already implemented in the main function?

Code:

```if (n > 0) {           int[][] pascal = Rows(n);           for (int[] row : pascal) {             for (int v : row) System.out.print(v + " ");             System.out.println("");```
all Rows has to do is to generate the array somehow to decide the row number...