The "divide-and-conquer" strategy is used to identify the location of a bug. Once you know you have a problem of some kind, you need to know where it is occurring before you can attempt to fix it. Run the program about half-way to find out if the bug occurred in the first or second half. Then cut the interval in which you located the bug in half again. Keep doing that until you homed into the function that is responsible for the bug..