fencepost error: n.

1. [comune] Un problema con l'equivalente discreto di una condizione con valori sentinella, spesso esibito nei programmi tramite cicli iterativi. Dal seguente problema: “e tu costruisci un recinto lungo 100 piedi con ogni palo lontano 10 piedi dal successivo, di quanti pali avrai bisogno?” (Sia 9 sia 11 sono risposte migliori della ovvia 10.) Ad esempio, supponi di avere una lunga lista di array di dati, e vuoi processare i dati m lungo n; quanti elementi ci sono? La risposta ovvia è n - m, ma questo e' un errore di fuori di uno (N.d.T. = off by one); la risposta corretta è n - m + 1. Un programma che usa la formula ‘ovvia’ avra' un fencepost error in esso. Vedi anche zeroth e off-by-one error, e nota che non tutti gli errori di off-by-one sono errori fencepost. Il gioco di Musical Chairs comprendeva un errore catastrofico di off-by-one quando N persone provavano a sedersi in N - 1 sedie, ma non e' un errore di fencepost. Gli errori di fencepost provengono dal contare gli oggetti invece degli spazi fra di essi, o viceversa, o nel rdimenticare di considerare quando si devono contare o meno entrambi gli estremi.

2. [raro] Un errore provocato da regolarita' inaspettate nei valori di input, che possono (ad esempio) completamente mettere in crisi un albero binario teoricamente efficiente o l'implementazione di una tabella di hash. (L'errore qui comprende la differenza fra i comportamenti peggiori ed aspettati di un algoritmo.)