Wykrywacz błędów: skąd komputer wie, że coś się popsuło?
Kable szumią, ludzie robią literówki, kurz siada na płytach, a kasa w sklepie czasem źle odczyta pasek. Mimo to przelew trafia na właściwe konto, a w urzędzie od razu widać, że ktoś pomylił się w numerze PESEL. Jak to możliwe? Do danych dokłada się kilka dodatkowych cyfr, które pilnują reszty.
Przygotowałem aplikację, w której uczniowie mogą sami psuć dane i patrzeć, jak komputer to wyłapuje:
👉 Otwórz Wykrywacz błędów: bledy.komputerowka.pl
📘 Instrukcja obsługi: komputerowka.pl/wykrywacz-bledow-doc
Najprostszy strażnik: bit parzystości
Litera „K” to w komputerze 7 bitów:
1 | 1001011 |
1 1001011 0 ← 4 jedynki, parzyście ✅
Po drodze zakłócenie zmienia jeden bit:
1 1000011 0 ← 3 jedynki, nieparzyście ❌ błąd!
Odbiorca liczy jedynki, widzi, że coś jest nie tak, i prosi o ponowne wysłanie. Ale uwaga: gdy zepsują się dwa bity, jedynek znów jest parzyście i błąd przemyka niezauważony.
W aplikacji można wysłać 1000 liter przez zaszumiony kabel. Przy kablu, w którym każdy bit psuje się z szansą 20%, niewykrytych błędów jest średnio ok. 340 na 1000. Na takie warunki jeden bit parzystości to za mało.
Magiczna sztuczka z kartami
Ułóż 25 kart w kwadrat 5 × 5, część czarną stroną do góry. Teraz dołóż jeszcze jeden wiersz i jedną kolumnę tak, żeby w każdym wierszu i każdej kolumnie było parzyście czarnych kart. Ktoś odwraca jedną dowolną kartę, gdy nie patrzysz.
Którą? Wystarczy znaleźć wiersz i kolumnę z nieparzystą liczbą czarnych kart. Odwrócona karta leży na ich skrzyżowaniu. 🎩
To nie tylko sztuczka. Tak samo działa korekcja błędów: dzięki parzystości w wierszach i kolumnach komputer nie tylko widzi, że jest błąd, ale też wie, gdzie jest, i może go naprawić.
PESEL: ostatnia cyfra pilnuje reszty
Numer PESEL ma 11 cyfr: data urodzenia, 4 cyfry porządkowe (przedostatnia mówi o płci) i cyfra kontrolna. Liczy się ją tak:
- Pomnóż pierwsze 10 cyfr przez wagi 1, 3, 7, 9, 1, 3, 7, 9, 1, 3.
- Dodaj wyniki.
- Weź ostatnią cyfrę sumy i odejmij ją od 10 (gdy ostatnia cyfra to 0, cyfra kontrolna też jest 0).
Przykład dla zmyślonej osoby urodzonej w XXIII wieku,
1 | 2361150123? |
| Cyfra | 2 | 3 | 6 | 1 | 1 | 5 | 0 | 1 | 2 | 3 |
|---|---|---|---|---|---|---|---|---|---|---|
| × waga | 1 | 3 | 7 | 9 | 1 | 3 | 7 | 9 | 1 | 3 |
| = | 2 | 9 | 42 | 9 | 1 | 15 | 0 | 9 | 2 | 9 |
Suma to 98, ostatnia cyfra 8, a 10 − 8 = 2. Pełny numer:
1 | 23611501232 |
Wagi 1, 3, 7 i 9 dobrano sprytnie: każda pomyłka w jednej cyfrze zmienia wynik, więc zostanie wykryta zawsze.
⚠️ Prawdziwego numeru PESEL nie wpisujemy na przypadkowych stronach, ani swojego, ani cudzego. To dana osobowa, którą oszuści mogą wykorzystać. Aplikacja ma przycisk „Wymyśl PESEL”, który daje numery osób urodzonych w XXIII wieku, więc na pewno nikogo prawdziwego.
Kod kreskowy EAN-13
Pod paskami na opakowaniu jest 13 cyfr. Ostatnia to znowu cyfra kontrolna, tym razem z wagami 1 i 3 na zmianę. Dla kodu
1 | 590123412345? |
Gdy kasa źle odczyta jeden pasek, suma się nie zgodzi i kasa zapiszczy: „zeskanuj jeszcze raz”.
Ciekawostka: prefiks 590 nie oznacza, że produkt zrobiono w Polsce. Oznacza tylko, że numer nadała polska organizacja GS1, czyli firma jest w niej zarejestrowana.
Wykrywanie czy korekcja?
| Strażnik | Co potrafi |
|---|---|
| bit parzystości, cyfra kontrolna PESEL i EAN, IBAN, numer karty płatniczej | wykrywa błąd: „coś jest nie tak, powtórz” |
| sztuczka z kartami, pamięć ECC w serwerach, kod QR, płyty CD | naprawia błąd: „tu był błąd, już poprawiony” |
Cyfra kontrolna nie chroni przed oszustwem. Każdy może policzyć poprawną cyfrę dla zmyślonego numeru. Chroni tylko przed przypadkowymi pomyłkami.
Trochę historii
- 1950: Richard Hamming z Bell Labs publikuje kody, które same poprawiają błędy. Wymyślił je, bo komputer przerywał mu obliczenia w weekendy przy każdym błędzie.
- 1954: Hans Peter Luhn z IBM zgłasza patent na cyfrę kontrolną, której do dziś używają karty płatnicze.
- 1974: w amerykańskim sklepie pierwszy raz skanuje się kod kreskowy przy kasie: na opakowaniu gumy do żucia.
- 1977: powstaje europejski kod EAN. Polska dostaje prefiks 590 w 1990 roku.
- 1979: w Polsce rusza system PESEL z cyfrą kontrolną na końcu numeru.
Wypróbuj Wykrywacz błędów
- ⚡ Bit parzystości: klikaj bity w kablu i patrz, kiedy odbiorca zauważy błąd. Wyślij 1000 liter przy 1%, 5% i 20% zakłóceń.
- 🎩 Która karta jest odwrócona? Sztuczka z kartami 5 × 5 i kartami kontrolnymi.
- 🪪 PESEL: wagi, iloczyny i suma krok po kroku, literówki i zamiany cyfr.
- 🛒 Kod kreskowy EAN-13: rysowany na żywo, z cyfrą kontrolną i opisem prefiksu.
- 🌍 Gdzie jeszcze są strażnicy: karty płatnicze, IBAN, ISBN, internet, kod QR, pamięć ECC.
- ❓ Quiz z 10 pytaniami.
👉 Uruchom Wykrywacz błędów: bledy.komputerowka.pl
📘 Instrukcja z pomysłami na lekcję: komputerowka.pl/wykrywacz-bledow-doc
Wyzwania
- Wyślij literę „A”. Zepsuj jeden bit, potem drugi. Kiedy odbiorca zauważył błąd?
- Wykonaj sztuczkę z kartami, odwracając kartę kontrolną w prawym dolnym rogu. Czy komputer ją znajdzie?
- Kliknij „Wymyśl PESEL” i policz cyfrę kontrolną na kartce, zanim spojrzysz na tabelę.
- Klikaj „Zamień dwie sąsiednie cyfry”, aż zamiana przemknie niezauważona. Co łączy zamienione cyfry?
- Dla ambitnych: weź z domu dowolny produkt i sprawdź jego kod kreskowy na kartce. Zgadza się?
Powodzenia, detektywi!
Zobacz też: wszystkie aplikacje, Kod QR od środka, Żarówki binarne, Zgadnij liczbę, Od Cezara do Enigmy i Podróż wiadomości.
© 2026 Komputerowka.pl · Arnold Basiński


