Binary Converting Code
Input validation?

At first glance, this looks like some sort of input validation:


if (number &lt; 0) {
    System.out.println("Error: Not a positive integer");
} else {
    // ...
}

// ...
System.out.println("The binary representation of your integer has: " + oneCount + " ones.");
System.out.println("The binary representation of your integer has: " + zeroCount + " zeros.");



But it's not... If the input is negative,
processing will happily continue and print that the number has 0 zeros and 0 ones, which is not true.

Lastly, errors should be printed on System.err instead of System.out.

Variable scope

Declare variables where you really need them, not sooner.
number, zeroCount, oneCount can all be declared later.

Decompose to smaller units

Instead of dumping the code in a single main method,
it would be better to decompose the multiple small methods,
each responsible for one thing.
For example, you could have these methods:


read an int from standard input
convert an int to a binary string
count the number of ones in a binary string


the number of zeros is length minus the number of ones



Simplify

Instead of this:


binary = Integer.toString(mod) + binary;



You could simplify as:

binary = mod + binary;


Reinventing the wheel

Integer.toBinaryString(...) does the same thing as your main loop.