@@ -0,0 +1,1358 @@
+package year2014;%0A%0Aimport java.util.Scanner;%0Aimport java.util.stream.IntStream;%0A%0A/**%0A * %3Ch3%3EDigital Root%3C/h3%3E%0A * %3Cp%3EThe digital root of a number is obtained by summing its individual digits,%0A * summing those individual digits, and continuing the process until the final sum%0A * is a single digit (that is, less than 10). For example, the digital root of 1234 is 1%3C/p%3E%0A *%0A * @author John Cameron%0A * @see %3Ca href=%22https://www.seminolestate.edu/computers/competition/samples/2014%22%3EProblem Descrption and Requirements%3C/a%3E%0A */%0Apublic class DigitalRoot %7B%0A%0A    public static void main(String%5B%5D args) %7B%0A%0A        Scanner scanner = new Scanner(System.in);%0A%0A        System.out.println(%22Enter a non-negative integer number: %22);%0A%0A        final int input = Math.abs(scanner.nextInt());%0A%0A        scanner.close();%0A%0A        int digitalRoot = input;%0A%0A        while (digitalRoot %3E 9)%0A            digitalRoot = sumIndividualDigits(digitalRoot);%0A%0A        System.out.println(%22The digital root of %22 + input + %22 is %22 + digitalRoot);%0A%0A    %7D%0A%0A    private static int sumIndividualDigits(int input) %7B%0A        if (input %3C 0)%0A            throw new IllegalArgumentException(%22Input must be positive%22);%0A%0A        char%5B%5D chars = String.valueOf(input).toCharArray();%0A%0A        return IntStream.range(0, chars.length)%0A                .map(i -%3E Character.getNumericValue(chars%5Bi%5D)).sum();%0A    %7D%0A%0A%7D%0A

Add Digital Root (2014) solution