import edu.neu.ccs.*;
import edu.neu.ccs.gui.*;
import edu.neu.ccs.codec.*;
import edu.neu.ccs.console.*;
import edu.neu.ccs.filter.*;
import edu.neu.ccs.jpf.*;
import edu.neu.ccs.parser.*;
import edu.neu.ccs.pedagogy.*;
import edu.neu.ccs.quick.*;
import edu.neu.ccs.util.*;
import edu.neu.ccs.util.MathUtilities.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.awt.font.*;
import java.awt.image.*;
import javax.swing.*;
import javax.swing.border.*;
import java.io.*;
import java.util.*;
import java.math.*;
import java.beans.*;
import java.lang.reflect.*;
import java.net.URL;
import java.util.regex.*;
import java.text.ParseException;
/** The sample starter class for Java Power Framework. */
public class Methods extends JPF
{
public static void main(String[] args) {
// LookAndFeelTools.showSelectLookAndFeelDialog();
LookAndFeelTools.adjustAllDefaultFontSizes(4);
new Methods();
}
/*
Binomial Expansion
* B(n,k) = B(n,k-1) * (n-k+1) / k, for 0 < k <= n.
B(10,0) = 1
B(10,1) = 10
B(10,2) = 45
B(10,3) = 120
B(10,4) = 210
B(10,5) = 252
B(10,6) = 210
B(10,7) = 120
B(10,8) = 45
B(10,9) = 10
B(10,10) = 1
*/
public static XBigInteger Binomial(int x, int a) {
if (a < 0)
return new XBigInteger(0);
if (a == 0) {
return new XBigInteger(1);
}
XBigInteger b = Binomial(x, a-1);
b.multiply(new XBigInteger(x-a+1));
b.divide(new XBigInteger(a));
console.out.println("B(" + x + "," + a + ") = " + b);
return b;
}
}