Сообщение об ошибке

  • Deprecated function: Methods with the same name as their class will not be constructors in a future version of PHP; views_display has a deprecated constructor в функции require_once() (строка 3066 в файле /home/users/m/matskywalker/domains/skywalkeradmin.ru/includes/bootstrap.inc).
  • Deprecated function: Methods with the same name as their class will not be constructors in a future version of PHP; views_many_to_one_helper has a deprecated constructor в функции require_once() (строка 113 в файле /home/users/m/matskywalker/domains/skywalkeradmin.ru/sites/all/modules/ctools/ctools.module).

Штрих-код для программиста.

Оказывается мало просто закодировать последовательность из 13 цифр. Для того, чтобы это стало штрих кодом, нужно вычислить еще и контрольный разряд. Вот как это делается:
Возьмем, к примеру, цифровой код: 4820024700016. Первые две цифры (482) означают страну происхождения (изготовителя или продавца) продукта, следующие 4 или 5 в зависимости от длинны кода страны (0024) - предприятие-изготовитель, еще пять (70001) - наименование товара, его потребительские свойства, размеры, массу, цвет.
Последняя цифра (6) контрольная, используемая для проверки правильности считывания штрихов сканером. EAN - 13. Статья на Википедии.
Пример вычисления контрольной цифры.
1. Сложить цифры, стоящие на четных местах:
8+0+2+7+0+1=18
2. Полученную сумму умножить на 3:
18x3=54
3. Сложить цифры, стоящие на нечетных местах, без контрольной цифры:
4+2+0+4+0+0=10
4. Сложить числа, указанные в пунктах 2 и 3:
54+10=64
5. Отбросить десятки:
получим 4
6. Из 10 вычесть полученное в пункте 5:
10-4=6

Если полученная после расчета цифра не совпадает с контрольной цифрой в штрих-коде, то сканер вообще не будет его считывать.

Комментарии

Аватар пользователя Kokozoid

Привет, как относишься к тому, чтобы разработать приложение на Android? Примочку для интернет магазина. У моего родственника есть такая задачка.

Аватар пользователя Матвей

Такие вопросы нужно задавать на форуме.
http://skywalkeradmin.ru/node/8

Пишу на яве за еду.