accuracy = conditioning × stability
This slogan is the one-line summary of the whole field, and it answers the practical question 'why is my answer wrong?' by splitting blame into exactly two parts. The accuracy you actually get is the product of two independent factors: how hard the PROBLEM is (its conditioning) and how good your ALGORITHM is (its stability). Either factor can sink you, and they multiply, so you need both to be in good shape.
It is the master rule of thumb said the other way round. Spelled out: relative forward error is at most (condition number) times (backward error). The condition number is the conditioning term — a fixed property of the problem you cannot change without reformulating it. The backward error is the stability term — for a backward-stable algorithm it is roughly the unit roundoff, about 10^-16 in double precision. Multiply them to predict the digits you keep. A well-conditioned problem (kappa ~ 1) solved by a stable method gives near-machine accuracy; an ill-conditioned problem (kappa ~ 10^10) solved by the SAME stable method loses about 10 digits — and that is unavoidable.
The honest consequences are worth stating plainly. First, a perfectly stable algorithm gives a large forward error on an ill-conditioned problem; the lost accuracy is the problem's fault, not the code's. Second, the best a method can do is be backward stable — small forward error is then a gift of good conditioning, not something the algorithm can promise on its own. Third, to fix a bad answer, diagnose which factor is to blame: improve stability by choosing a better algorithm, or improve conditioning by reformulating the problem or carrying more precision. Treating both knobs at once is how reliable computing is done.
Two scenarios, same backward-stable solver. (a) kappa(A) ~ 10: forward error ~ 10 x 10^-16 = 10^-15, about 15 good digits. (b) kappa(A) ~ 10^13: forward error ~ 10^13 x 10^-16 = 10^-3, only about 3 good digits. The solver did the same thing both times; conditioning made the difference.
Hold stability fixed and watch conditioning alone decide the accuracy.
A common misconception is that switching algorithms always helps. It only helps if the current method is unstable; on an ill-conditioned problem every stable method gives the same disappointing accuracy.