Тему статьи нетрудно понять из названия. Мы будем писать программу, определяющую страну-производитель товара по его штрих-коду. Конечно, это можно сделать с помощью специального устройства – терминала сбора данных, но не будем отклоняться от темы.
Немного теории
Штрих-код – это графическая метка, в которой по определенным правилам закодирована информация, как правило, это алфавитной цифровой код-идентификатор. Существует несколько общепринятых стандартов штрих-кодов. Мы будем работать с распространенным международным кодом EAH-13. Здесь первые 2-3 цифры обозначают страну-производитель товара, следующие пять обозначают предприятие, где был изготовлен товар, следующие 5 цифр – товар и последняя – контроль. Отличие этого кода от других – две удлиненных черты в начале и конце и ровно 13 цифр.
В качестве языка программирования выбран "Turbo Pascal 7.0". Выбор столь «раритетной» среды обусловлен тем, что я не хочу заострять внимание на интерфейсе, а с помощью Турбо Паскаля это легче всего сделать. Конечно же, при желании программы можно написать и на Си, Delphi и т. д. Главное – понять принцип.
Приступим. Запускаем Pascal и пишем:
Program BarCode_EAH13;
Uses crt;
Var
i:integer;
s,z2,z3:string;
Мы назвали программу "BarCode_EAH13", подключили "crt" и объявили переменные. Идем дальше:
procedure vvod;
begin
write(Enter the bar-code: );
readln(s);
end;
Процедура "vvod" отвечает за интерфейс: предлагает ввести штрих-код и то, что введет пользователь, записывает в переменную.
Теперь самое главное:
procedure sravn;
begin
z2:=Copy(s,1,2);
z3:=Copy(s,1,3);
If z3=789 then
begin
writeln(Brazil);
end;
...
end;
Эта процедура отвечает за сравнение первых 2-3 цифр с кодами стран. Переменная z2 записывает на себя первые две цифры, а z3 - первые три. Затем происходит сравнение. Например, если первые три цифры - 789, то программа пишет, что страна-производитель – Бразилия, Норвегия - 70, Израиль - 729, Швеция - 73, Мексика - 750, Швейцария - 76, Аргентина – 779. Я не стал вводить все страны, т. к. их очень много. Если вам интересно, то вы легко сможете найти таблицу первых цифр штрих-кодов в интернете и ввести в свою программу.
Пишем "тело":
Begin
clrscr;
vvod;
sravn;
readkey;
End.
Первая строка очищает экран, вторая строка запускает процедуру "vvod", третья - "sravn", а последняя ждет ввода любой клавиши для завершения работы. Вот и все! Можете добавить некоторый "удобства": например, было бы хорошо, если бы программа была зациклена, то есть определяла страну постоянно. Главное при этом - не забыть ввести код выхода. Ну, а если переведете код на визуальный язык, например, на Delphi, то получится уже качественный продукт, который не стыдно и продать.
Это интересно:
Для считывания штрих кода используют специализированные устройства - сканеры штрих кода, а для печати этикеток со штрих кодом применяют принтеры этикеток.