This program demonstrates a triangular array. : Array SubArray « Collections Data Structure « Java






This program demonstrates a triangular array.

This program demonstrates a triangular array.
    

/*
 This program is a part of the companion code for Core Java 8th ed.
 (http://horstmann.com/corejava)

 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/**
 * This program demonstrates a triangular array.
 * 
 * @version 1.20 2004-02-10
 * @author Cay Horstmann
 */
public class LotteryArray {
  public static void main(String[] args) {
    final int NMAX = 10;

    // allocate triangular array
    int[][] odds = new int[NMAX + 1][];
    for (int n = 0; n <= NMAX; n++)
      odds[n] = new int[n + 1];

    // fill triangular array
    for (int n = 0; n < odds.length; n++)
      for (int k = 0; k < odds[n].length; k++) {
        /*
         * compute binomial coefficient n*(n-1)*(n-2)*...*(n-k+1)/(1*2*3*...*k)
         */
        int lotteryOdds = 1;
        for (int i = 1; i <= k; i++)
          lotteryOdds = lotteryOdds * (n - i + 1) / i;

        odds[n][k] = lotteryOdds;
      }

    // print triangular array
    for (int[] row : odds) {
      for (int odd : row)
        System.out.printf("%4d", odd);
      System.out.println();
    }
  }
}

   
    
    
    
  








Related examples in the same category

1.Gets the subarray from array that starts at offset.
2.Gets the subarray of length length from array that starts at offset.
3.Puts the entire source array in the target array at offset offset.
4.Copies bytes from the source byte array to the destination array
5.Exclude 2 arrays of ints
6.This program shows how to store tabular data in a 2D array.
7.Sub Array
8.Reverse an Array
9.Returns a new array containing all of a, with additional extra space added (zero initialized).