jtulach@321: package org.apidesign.math.test; jtulach@321: jtulach@321: import org.apidesign.math.Arithmetica; jtulach@321: jtulach@321: /** Class showing inventive, non-expected use of jtulach@321: * Arithmetica methods to do multiplication instead of jtulach@321: * addition. jtulach@321: */ jtulach@321: // BEGIN: design.composition.arith.factorial jtulach@321: public final class Factorial extends Arithmetica { jtulach@321: public static int factorial(int n) { jtulach@321: return new Factorial().sumRange(1, n); jtulach@321: } jtulach@321: @Override jtulach@321: public int sumTwo(int one, int second) { jtulach@321: return one * second; jtulach@321: } jtulach@321: } jtulach@321: // END: design.composition.arith.factorial jtulach@321: