Skip to main content
LibreTexts - Ukrayinska

4.9: Деталь- Перевірте цифри

  • Page ID
    29921
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)

    Виявлення помилок зазвичай використовується для зменшення людських помилок. Багато разів люди повинні мати справу з довгими серійними номерами або послідовностями символів, які читаються вголос або набираються на клавіатурі. Приклади включають номери кредитних карток, номери соціального страхування та коди реєстрації програмного забезпечення. Ці дії схильні до помилок. Додаткові цифри або символи можуть бути включені для виявлення помилок, так само як біти парності включені в бітові рядки. Часто цього буває достатньо, оскільки при виявленні помилки операцію можна повторити зручно.

    В інших випадках, таких як номери телефонів або адреси електронної пошти, не використовуються контрольні символи, і тому будь-яка послідовність може бути дійсною. Очевидно, що потрібно проявляти більше обережності при використанні цих, щоб уникнути набору неправильного номера або надсилання повідомлення електронної пошти або факсу неправильній особі.

    Кредитні картки

    Номери кредитних карток мають додаткову контрольну цифру, обчислену способом, зазначеним у 1954 році H.P. Luhn з IBM. Він призначений для захисту від поширеного типу помилки, що представляє собою транспозицію двох сусідніх цифр.

    Номери кредитних карток зазвичай містять 15 або 16 цифр (алгоритм Луна насправді працює для будь-якої кількості цифр). Перші шість цифр позначають організацію, яка випустила карту. Фінансова галузь перешкоджає публічному розкриттю цих кодів, хоча більшість вже широко відомі, безумовно, тим, хто серйозно розглядає шахрайство. З цих шести цифр перша позначає економічний сектор, пов'язаний з карткою, наприклад 1 і 2 для авіакомпаній, 3 для подорожей і розваг, і 4, 5 і 6 для банків і магазинів. Остання цифра - це контрольна цифра, а інші цифри позначають індивідуальний картковий рахунок.

    Емітентам кредитних карт були присвоєні власні префікси відповідно до цієї схеми. Наприклад, карти American Express мають номери, що починаються з 34 або 38, Visa з 4, MasterCard з 51, 52, 53, 54 або 55 і Discover з 6011 або 65.

    Процедура Luhn перевіряє, чи є номер кредитної картки, включаючи контрольну цифру, дійсний. Спочатку виберіть ті цифри з номера картки, які з'являються в альтернативних позиціях, починаючи з наступної до останньої цифри. Наприклад, якщо номер картки становить 1234 4567 7891, ці цифри будуть 9, 7, 6, 4, 3 та 1. Зверніть увагу, скільки з цих цифр більше 4 (в даному випадку 3 з них). Потім складіть ці цифри разом (наприклад, 9 + 7 + 6 + 4 + 3 + 1 = 30). Потім складіть всі цифри в номері карти (в даному прикладі 57). Подивіться на суму цих трьох чисел (в даному випадку 3 + 30 + 57 = 90). Якщо результат кратний 10, як в даному прикладі, номер картки проходить тест і може бути дійсним. В іншому випадку це не так.

    Ця процедура виявляє всі однозначні помилки, і майже всі транспозиції суміжних цифр (наприклад, введення «1243» замість «1234»), але є багато інших можливих помилок транскрипції, які не вловлюються, наприклад «3412» замість «1234». Він має високу швидкість коду (лише одна контрольна цифра додається до 14 або 15 цифр корисного навантаження) і простий у використанні. Він не може бути використаний для виправлення помилки, тому має значення лише в контексті, де для виправлення використовуються інші засоби.

    ISBN

    Міжнародний стандартний номер книги (ISBN) - це 13-значний номер, який однозначно ідентифікує книгу або щось подібне до книги. Різні видання однієї книги можуть мати різні ISBN. Книга може бути в друкованому вигляді або це може бути електронна книга, аудіокасета або програмне забезпечення. ISBN не представляють особливого інтересу для споживачів, але вони корисні книготорговцям, бібліотекам, авторам, видавцям та дистриб'юторам.

    Система була створена британським книготорговцем У.Х. Смітом в 1966 році з використанням 9-значних чисел, потім модернізована в 1970 році для міжнародного використання шляхом додавання 0 до існуючих чисел, а потім модернізована в 2007 році до 13-значних чисел шляхом складання 978 і перерахунку контрольної цифри.

    ISBN книги відображається як цифра після букв «ISBN», найчастіше на задній стороні пилозбірника або задній обкладинці м'якої обкладинки. Зазвичай він знаходиться поблизу деяких штрих-кодів і часто відображається машиночитаним шрифтом.

    Є п'ять частин ISBN (чотири до 2007), змінної довжини, розділені дефісами. По-перше, це префікс 978 (відсутній до 2007 року). Коли числа, що використовують цей префікс, будуть вичерпані, буде використовуватися префікс 979. Далі йде ідентифікатор країни (або групи країн або районів, що мають спільну мову). Далі йде число, яке ідентифікує конкретного видавця. Потім - ідентифікатор заголовка, і, нарешті, єдина контрольна цифра. Ідентифікатори країн присвоюються Міжнародним агентством ISBN, розташованим в Берліні. Ідентифікатори видавця призначаються в межах країни або області, представленої, а ідентифікатори заголовків призначаються видавцями. Контрольна цифра розраховується так, як описано нижче.

    Для прикладу розглянемо ISBN 0-9764731-0-0 (який знаходиться в форматі pre-2007). Код області мови 0 представляє англомовні країни. Видавець 9764731 є кафедрою електротехніки та комп'ютерних наук, Массачусетський технологічний інститут. Ідентифікатор елемента 0 представляє книгу «Електрон і біт». Ідентифікатор дорівнює 0 внаслідок того, що ця книга є першою опублікованою за допомогою ISBN цього видавця. Той факт, що 7 цифр були використані для ідентифікації видавця і тільки один пункт відображає реальність, що це дуже маленький видавець, якому, ймовірно, не знадобиться більше десяти ISBN. ISBN можна придбати в наборах 10 (за $269,95 станом на 2007 рік), 100 ($914,95), 1000 ($1429,95) або 10 000 ($3449,95), а ідентифікатори видавця, призначені на момент покупки, матимуть 7, 6, 5 або 4 цифри відповідно. Така домовленість зручно обробляє багато дрібних видавців і кілька великих видавців.

    Тенденції публікацій, що сприяють багатьом малим видавцям, а не меншій кількості великих видавців, можуть напружити систему ISB Невеликі видавці повинні купувати номери щонайменше 10 одночасно, і якщо публікується лише одна або дві книги, невикористані номери не можуть бути використані іншим видавцем. Організації, які в першу чергу не є видавцями, але іноді публікують книгу, швидше за все, втратять невикористані ISBN, оскільки ніхто не може згадати, де їх востаннє поклали.

    Книги, опубліковані в 2007 році та пізніше, мають 13-значний ISBN, який призначений для сумісності зі штрих-кодами UPC (Universal Product Code), широко використовуваними в магазинах. Процедура знаходження контрольних цифр UPC використовується для 13-значних ISBN. Почніть з 12 цифр (без контрольної цифри). Складіть першу, третю, п'яту та інші цифри в непарних позиціях разом і помножте суму на 3. Потім додайте результат до суми цифр в парних позиціях (2, 4, 6, 8, 10 і 12). Відніміть результат з наступного вищого кратного 10. Результат, число від 0 до 9 включно, є бажаною контрольною цифрою.

    Цей метод дає код з великою швидкістю коду (0.92), який вловлює всі однозначні помилки, але не всі помилки транспозиції.

    Для книг, виданих до 2007 року, контрольну цифру можна розрахувати за такою процедурою. Почніть з дев'ятизначного числа (без контрольної цифри). Помножте кожну на свою позицію, причому крайня ліва позиція дорівнює 1, а крайня права позиція 9. Додайте ці продукти та знайдіть залишок суми по модулю 11 (тобто число, яке ви повинні відняти, щоб результат був кратний 11). Результатом є число від 0 до 10. Тобто контрольна цифра. Наприклад, для ISBN 0-9764731-0-0, 1 × 0 + 2 × 9 + 3 × 7 + 4 × 6 × 4 + 6 × 7 + 7 × 3 + 8 × 1 + 9 × 0 = 154, що дорівнює 0 мод 11.

    Якщо контрольна цифра менше десяти, вона використовується в ISBN. Якщо контрольна цифра дорівнює 10, замість неї використовується буква Х (це римська цифра для десяти). Якщо ви подивитеся на кілька книг, ви знайдете кожен так часто контрольну цифру X.

    Ця методика дає код з великою швидкістю коду (0.9), який ефективний для виявлення транспонування двох сусідніх цифр або зміни будь-якої однієї цифри.

    ISSN

    Міжнародний стандартний серійний номер (ISSN) - це 8-значний номер, який однозначно ідентифікує друковані або недруковані серійні видання. ISSN пишеться у формі ISSN 1234-5678 у кожному випуску серійного видання. Зазвичай їх навіть не помічає широка громадськість, але корисні видавцям, розповсюджувачам та бібліотекам.

    ISSNS використовуються для газет, журналів та багатьох інших видів періодичних видань, включаючи журнали, суспільні операції, монографічні серії та навіть блоги. ISSN застосовується до серії в цілому, яка, як очікується, триватиме нескінченно довго, а не до окремих питань. Призначення є постійними - якщо серійний номер припиняє публікувати, ISSN не відновлюється, і якщо серійний номер змінює свою назву, потрібно новий ISSN. У Сполучених Штатах ISSNS видаються по одному, без оплати, офісом Бібліотеки Конгресу.

    На відміну від ISBN, немає сенсу, пов'язаного з частинами ISSN, за винятком того, що перші сім цифр утворюють унікальний номер, а остання - контрольна цифра. Не більше 10 000 000 ISSNS можуть бути призначені, якщо формат не буде змінений. Станом на 2006 рік у всьому світі було призначено 1 284 413, включаючи 57 356 випущених того року.

    Контрольна цифра розраховується за наступною процедурою. Почніть з семизначного числа (без контрольної цифри). Помножте кожну цифру на її (назад) положення, причому крайня ліва позиція - 8, а крайня права позиція 2. Складіть ці продукти і відніміть з наступного вище кратного 11. Результатом є число від 0 до 10. Якщо вона менше 10, ця цифра є контрольною цифрою. Якщо вона дорівнює 10, контрольна цифра дорівнює X. Контрольна цифра стає восьмою цифрою кінцевого ISSN.