The alternative is to try for everything at the outset with the result that, as a consequence of a few conceptual errors, your program produces no output. And programs that produce no output, of course, receive grades of F, even if they are very long. So don't risk this. Make certain that at every step you have at least some output. This is also very good for morale as you work on any nontrivial assignment.
Every good program is well-documented.
If documentation is inadequate, then this will be reflected in the grade. Additional ideas for simplifying the program initially are the following. Be satisfied to print the binary equivalent, say, backwards to begin with. Only after that works, should you worry about printing digits in the correct order. Start really small by generating and printing just the rightmost digit of the binary equivalent of 191.