Logic error
| This article does not cite any references or sources. (November 2007) |
In computer programming, a logic error is a bug in a program that causes it to operate incorrectly, but not to terminate abnormally (or crash). A logic error produces unintended or undesired output or other behavior, although it may not immediately be recognized as such.
Logic errors occur in both compiled and interpreted languages. Unlike a program with a syntax error, a program with a logic error is a valid program in the language, though it does not behave as intended. The only clue to the existence of logic errors is the production of wrong solutions.
Contents |
Common causes [edit]
The mistake could be the logical error in a statement (for example, a wrong or incorrect formula), an error in an algorithm, or even the wrong algorithm selected.
Debugging logic errors [edit]
One of the ways to find these type of errors is to output the program's variables to a file or on the screen in order to define the error's location in code. Although this will not work in all cases, for example when calling the wrong subroutine, it is the easiest way to find the problem if the program uses the incorrect results of a bad mathematical calculation.
Examples [edit]
This example function in C to calculate the average of two numbers contains a logic error. It is missing brackets in the calculation, so it compiles and runs but does not give the right answer.
int average(int a, int b) { return a + b / 2; /* should be (a + b) / 2 */ }
See also [edit]
| This computer programming-related article is a stub. You can help Wikipedia by expanding it. |