public class DividerFinder {

    public static void main(String[] args) {
        new DividerFinder(1000000000).printDividers();
    }

    private final int number;

    public DividerFinder(int number) {
        super();
        this.number = number;
    }

    /**
     * Prints all dividers of the number without a 0 digit
     */
    public void printDividers() {
        for (int i = 1; i <= Math.sqrt(this.number); i++) {
            if (isDivider(i)) {
                int j = this.number / i;
                if (!containsZero(i) && !containsZero(j)) {
                    System.out.println(i + "; " + j);
                }
            }
        }
    }

    /**
     * @return True if the divider is a divider of the number
     */
    private boolean isDivider(int divider) {
        return this.number % divider == 0;
    }

    /**
     * @return True if at least one digit of the value is 0
     */
    private boolean containsZero(int value) {
        return String.valueOf(value).contains("0");
    }

}