Jakub chce postawić płot ze słupków i zamocowanych między nimi paneli z siatki. Płot ma mieć długość 20 metrów, a każdy panel ma 2 metry szerokości. Kupił 20:2=10 paneli i tyle samo słupków, ale okazało się, że jednego słupka mu zabrakło.
Helena ma 26 dni urlopu i chce go zacząć 3 sierpnia. Policzyła, że jej urlop skończy się 29 sierpnia, bo 3+26=29, i tak napisała we wniosku. Kadrowa powiedziała jej, że 29 musi już być w pracy, bo urlopu wystarczy jej tylko do 28, a wniosek trzeba skorygować.
Lekarz powiedział Julii, że jest w trzynastym tygodniu ciąży. Ale adnotacja na USG mówi: wiek ciąży 12w2d. Julia domyśla się, że to znaczy “dwunasty tydzień, drugi dzień” i martwi się, że coś pomyliła albo że dziecko jest chyba za małe jak swój wiek.
Gdzie jest błąd?
Co te trzy sytuacje mają ze sobą wspólnego? W każdej z nich występuje błąd lub niepewność wyniku, ale tylko o jeden. I nie jest to z powodu zwykłego błędu rachunkowego, takiego, z jakim mamy do czynienia, kiedy ktoś doda 2 do 3 i wyjdzie mu 6, albo pomnoży 7 przez 8 i dostanie 42. Obliczenia wykonano poprawnie, błąd pojawia się na wcześniejszym etapie, przy analizie problemu. Najłatwiej zobaczyć to na przykładzie płotu Jakuba.
Wyobraźmy sobie bardzo długi płot ze słupków i paneli, w którym słupki stoją równo co dwa metry. Odmierzymy 20-metrowy fragment tego płotu, zaczynając od słupka. Będzie wyglądał tak: pierwszy słupek, potem pierwszy cały panel, drugi słupek i tak dalej, aż do dziesiątego słupka, po którym nastąpi dziesiąty panel… i na tym koniec. Zaczęliśmy odmierzanie tuż przed słupkiem, więc kończymy je też tuż przed słupkiem. Mamy 10 słupków i 10 paneli.
![]()
Jeśli jednak chcemy zbudować wolnostojący kawałek płotu, to musimy dodać jeszcze jeden słupek na końcu, bo inaczej ostatni panel nie miałby się na czym trzymać. Nadal będziemy mieć 10 paneli, ale słupków już 11. (Płot będzie w rzeczywistości dłuższy o szerokość słupka, ale tę możemy potraktować jako zaniedbywalną.)
![]()
Obliczenia czasu
Podobne zjawisko pojawia się wtedy, kiedy chcemy obliczyć odstęp czasu między jakimiś dwoma wydarzeniami. Od 9 do 12 lipca mijają cztery dni: 9, 10, 11 i 12 – ale od 9 rano do 12 w południe tylko trzy godziny. To dlatego, że godzina 9 oznacza pojedynczy moment w czasie – a data 9.07 odnosi się do całego dnia, od północy do północy. Godziny liczymy jak słupki w płocie, a dni jak panele. Kadrowa Heleny ma rację.
A jak liczymy tygodnie ciąży? To zależy. Adnotacja na USG Julii nie mówi, że jest ona “w dwunastym tygodniu i drugim dniu ciąży”, ale że od początku ciąży minęło już 12 pełnych tygodni i jeszcze dwa dni. Skoro 12 tygodni minęło, to teraz trwa trzynasty, dokładnie tak jak powiedział lekarz. Wszystko jest w porządku.
A teraz matematyka
Podobnej natury błędy często przydarzają się programistom, zwłaszcza przy konstrukcjach typu pętli, i muszą oni na nie stale uważać. Nazywają je wtedy “błędami pomyłki o 1” albo po angielsku “off-by-one error”. Ale mogą się także zdarzyć na lekcjach matematyki, szczególnie wtedy, kiedy mowa o ciągach.
Wzór ogólny ciągu arytmetycznego, który poznajemy na lekcjach w liceum, wygląda tak (litera r oznacza różnicę ciągu):
![]()
Aby obliczyć n-ty wyraz, trzeba pomnożyć różnicę ciągu przez n-1 i dodać do pierwszego wyrazu. Jeśli na przykład obliczamy dziewiąty wyraz, to różnicę mnożymy przez 8, a nie przez 9. Wyrazy ciągu są jak słupki, a kolejne różnice między nimi jak panele: żeby dotrzeć do dziewiątego wyrazu, wystarczy pokonać osiem różnic.
Można byłoby uniknąć tej rozbieżności, gdyby wyrazy ciągu numerować od zera: i tak dalej. Wtedy wzór na n-ty wyraz wyglądałby prościej:

Ale dopuszczenie wyrazu o numerze 0 też prowadziłoby do wielu nieporozumień. Kiedy mówimy “pierwszy wyraz ciągu”, to chodzi nam o ten, który występuje na początku, czy o ten, który ma numer 1? Przy numerowaniu od 1 to to samo, ale nie przy numerowaniu od 0. Dlatego w szkole wszystkie ciągi numerujemy od jedynki – a do dziwactw zawartych we wzorze ogólnym ciągu arytmetycznego (z ciągiem geometrycznym jest zresztą taki sam problem!) trzeba się po prostu przyzwyczaić.
Autorem tekstu jest Nauczyciel: Katarzyna Dymara



