**2-D Arrays Pascal’s Triangle- Java**

Blaise Pascal was a French mathematician and philosopher who lived in the mid-1600’s. He accomplished much in his lifetime, including the construction of a mechanical calculator and some very early work in combinatorics and the development of differential calculus. In his studies, he devised what has become known as Pascal’s Triangle, http://ptri1.tripod.com/ which simplifies the calculation of the coefficients of the expression **(x + y)****n**, where **n **is a positive integer. That is, we all know

**(x + y)****2 ****= x****2 ****+ 2xy + y****2 **

(implying coefficients of 1,2,1), but what are the coefficients of (x + y)3 or (x + y)4 or (x + y)10 By using Pascal’s Triangle, these values can be quickly calculated.

The first part of Pascal’s Triangle looks like this:

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

From examination, you can see that if we number the rows beginning at 0, the values listed on each line correspond to the coefficients where n is equal to the line number. You can also see, except for the 1’s, any coefficient is found simply by adding together the 2 numbers diagonally above it. (And, if you think about it, picture 0’s everywhere along the outside edge, and the 1’s can be calculated the same way!)

Write a program that calculates and displays the first 16 rows of Pascal’s Triangle. (That is, it contains the coefficients for n=15 in the last row.) It must be displayed in the format shown above (but not symmetrically — extra points credit if the triangle is formatted so that it is a perfectly symmetrical isosceles triangle when output) You must use a two-dimensional array to calculate and store the triangle. (How big will this 2D array have to be? YOU FIGURE IT OUT! Don’t make it any larger than necessary.)

You are free to write as many (or as few) classes as you deem necessary (you should have at least two). You will be graded on modular design.

To turn in

_all source files necessary to compile and run program in a zip file named with your last name, followed by first initial of first name, followed by hw5 (e.g.: peterschw5.zip)

_name the class that contains your main method PascalTester.

5 hours from now.