function:RenderSidePart pageleftbodycaption pageleftbody sidenote Main.2007SelfDivisor-SideNote Main.SideNote Site.SideNote

# 2007 Self Divisor

An integer is a "self-divisor" if every decimal digit is a divisor of the number.
For example, 128 is a self divisor since 1 divides 128, 2 divides 128, and 8 divides 128.
26 on the other hand is not a self-divisor. 2 does divide 26, but 6 does not divide 26.
Because you can't divide by zero, and number that has a zero in it like 1024, can never be a self-divisor

# SelfDivisor

public class SelfDivisor
{
/** @param number the number to be tested
*         Precondition: number > 0
*  @return true if every decimal digit of number is a divisor of number;
*          false otherwise
*/
public static boolean isSelfDivisor(int number)
{
//part a here

}

/** @param start starting point for values to be checked
*         Precondition: start > 0
*  @param num the size of the array to be returned
*         Precondition: num > 0
*  @return an array containing the first num integers >= start that are self-divisors
*/
public static int[] firstNumSelfDivisors(int start, int num)
{
//part b here

}

/****************/

public static void main (String[] args)
{
System.out.println("Is 128 a self divisor (should be true):  " + isSelfDivisor(128));
System.out.println("Is 26 a self divisor (should be false): " + isSelfDivisor(26));
System.out.println("Is 1024 a self divisor (should be false): " + isSelfDivisor(1024));
System.out.println("Is 15 a self divisor (should be true):" + isSelfDivisor(15));
System.out.println("The first 3 self divisors greater or equal to 10 (should be 11,12,15):");
for (int n : firstNumSelfDivisors(10, 3))
System.out.print(n + " ");
System.out.println();
}
}