What is Software bug?
A '''software bug''' is a [[problem]] with the [[code]] in a [[computer program]] which makes it not work properly. They can cause [[inconvenience]] to the user and may make their computer [[crash]] or [[freeze]]. Most computer programs have bugs. A program that has a large number of bugs (or possibly a single or a few serious bugs) is said to be '''buggy'''. Most bugs are caused by bad [[programming]] by the [[developer]], but sometimes they can be caused by [[compiler]] problems. When bugs are found, people send bug reports to the developer to tell them about the bug and let them fix it. Sometimes, people say that their [[computer]] has a bug when something is wrong with it. The problem is usually caused by a [[computer virus]] which is making their computer slow or do different things. Some bugs are harmless, for example, many video games incorrectly allow objects to move through walls. Other bugs are more severe, for example, a bug in a navigation system that causes an airplane to explode, or the two bugs in the [[Therac-25]] [[radiation therapy]] machine's control software, which caused it to produce far more radiation than intended, killing at least three people. == Types of bugs == === Buffer overflow === A buffer overflow happens when a program writes to or reads from an area of [[Computer memory|memory]] that it is not supposed to access. ===Arithmetic overflow === An arithmetic overflow happens when a number contained in a [[variable]] is increased beyond the highest number that the variable allows. This will usually cause the number to reset back to zero. === Infinite loop === An infinite loop happens when a program enters a loop (a series of instructions that is repeated many times) and there is no way out of the loop. This can cause the program to freeze. === Roundoff errors === If a floating point variable doesn't have enough precision, the number stored in it can be inaccurate. This can cause various problems depending on the type of program, for example it could cause a navigation progra