Фармакод

Фармако́д, также известный как Фармацевтический двоичный код, является стандартом штрихового кода, используемый в фармацевтической промышленности в качестве системы контроля упаковок. Он может быть читаемым, даже несмотря на ошибки при печати. Фармакоды могут быть напечатаны в нескольких цветах, чтобы убедиться, что оставшаяся часть упаковки (которую фармацевтическая компания должна печатать, чтобы защитить себя от юридической ответственности) правильно напечатана.

Альтернативный текст
Пример фармакода

Кодирование править

Фармакод может представляться только одним целым числом от 1 до 131 070. В отличие от других широко используемых линейных штриховых кодов, фармакод не хранит данные в виде, соответствующем возможности понимания человеком цифр, число кодируется в двоичном формате. Фармакод читается сканером справа налево и слева направо (если сканер всенаправленный): каждая узкая полоса обозначает ноль в двоичном коде и каждая широкая полоса обозначает единицу. Минимальная длина штрихкода — 1 узкая полоса и максимальная — 16 широких, так что наименьшее число, которое может быть закодировано — это 1 (1 узкая полоса) и самое большое — 131070 (16 широких полос). Фармакоды представляются цветами, которые доминируют на упаковке.

Алгоритм кодирования править

  1. К числу, необходимому для кодирования, необходимо прибавить единицу (пример: 69 + 1 = 70)
  2. Необходимо перевести число в двоичный формат (7010 = 10001102)
  3. «Вычеркнуть» единицу, стоящую впереди всех остальных чисел (1000110 → 000110)
  4. Преобразовать число в линейный код, заменяя нули узкими полосками, а единицы — широкими (000110 → IIIIII)

Алгоритм декодирования править

  1. Заменить узкие и широкие полоски числами (IIIIIII → 0110010)
  2. Поставить единицу спереди этого числа (10110010)
  3. Выполнить перевод этого двоичного числа в десятичное (101100102 → 17810)
  4. Вычесть из полученного числа единицу (178 — 1 = 177)

См. также править