Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.84/19: Рейтинг темы: голосов - 19, средняя оценка - 4.84
 Аватар для DeLuxe
156 / 158 / 93
Регистрация: 01.01.2010
Сообщений: 398

Определить по вводимому числу (ШК) страну-производителя товара и истинность данного ШК

04.01.2010, 12:21. Показов 3683. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача с олимпиады

Штриховой код (ШК) содержит информацию о товаре и его производителе, Один из распространенных - - это 13-разрядный европейский код EAN-13 (European Article Numbering), Крайние левые разряды определяют страну-производителя товара, далее сле¬дуют код товара и код изготовителя, а последняя цифра кода должна совпадать с кон¬трольной суммой ШК и позволяет оценить подлинность ШК и качество товара.
Определить по вводимому числу (ШК) страну-производителя товара и истинность
данного ШК.

Алгоритм расчета Пример для
контрольной суммы (КС) ШК = 4600376211206
1. Сложить цифры, стоящие
на четных местах ШК 6 + 0 + 7 + 2+1+0=16
2. Полученную сумму умножить на три 16 • 3 = 48
3. Сложить цифры, стоящие на нечетных местах ШК
(кроме самой контрольной цифры) 4 + 0 + 3 + 6+1 +2=16
4. Сложить числа, полученные
в пунктах 2 и 3 48+16 = 64
5. Отбросить десятки 64 - 60 = 4
6. Из числа 10 вычесть число,
полученное в пункте 5 10-4 = 6

Коды стран заданы в файле «CODE.TXT», который будет использоваться при проверке решений задачи. Код страны в этом файле отделяется от названия страны, по крайней ме¬ре, одним пробелом и может быть составным (либо задаются два кода через запятую, либо задается диапазон кодов через тире).

Пример задания файла «CODE.TXT»
00—09 США и Канада
30—37 Франция
64 Финляндия
400-440 Германия
460—469 Россия и СНГ
484 Молдова
45,49 Япония

Замечание: запись «00-09 США и Канада» означает, что коды 00,01,.„09 отводятся для США и Канады, а в записи «45,49 Япония» стране Японии соответствуют коды 45 или 49.


Формат входных данных:
Каждая строка входного файла содержит один штрих-код, который может быть как верным, так и ошибочным.

Формат выходных данных:
Каждой строке из входного файла должна соответствовать одна строка в выходном файле. Строка содержит одно из слов: ВЕРНЫЙ/НЕВЕРНЫЙ и в случае верного ШК название страны-производителя.


Что мне нужно:
Собственно, мне нужна идея для проверки кода страны. В каком формате это все делать,в каком направлении топать и т.п. Я конечно могу построчно как бы, но текст программы будет очень большой, мне это не нравится. Как можно грамотно сделать? Ещё, количество штрих-кодов в условии не определено, то есть их может быть любое количество. То есть, как организовать проверку всех строк. Вобщем лучше уж тогда цельный текст программы. Благодарю.
Да и условие не совсем понятно, написано, вроде "Каждая строка входного файла содержит один штрих-код, который может быть как верным, так и ошибочным.", но одновременно "Коды стран заданы в файле «CODE.TXT», который будет использоваться при проверке решений задачи." Разобраться хотелось бы..
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.01.2010, 12:21
Ответы с готовыми решениями:

По вводимому с клавиатуры целому числу определить сколько различных цифр используется в его записи
Собственно, задача: По вводимому с клавиатуры целому числу определить сколько различных цифр используется в его записи. Протестировать...

Массив записей. Структура: наименование товара, его количество, цену за единицу товара и общую стоимость данного товара
Пожалуйста помогите с задачкой на массивы для экзамена.. 1.Разработать программу на ЯП Pascal, в которой происходит заполнение массива...

Функция чисел Фибоначчи, предшествующих вводимому числу
С помощью рекурсивной функции вычислить и вывести числа Фибоначчи, предшествующие вводимому числу

2
Эксперт по компьютерным сетямЭксперт Pascal/Delphi
 Аватар для TAVulator
4191 / 1292 / 237
Регистрация: 27.07.2009
Сообщений: 3,962
04.01.2010, 12:47
Лучший ответ Сообщение было отмечено DeLuxe как решение

Решение

Цитата Сообщение от DeLuxe Посмотреть сообщение
Собственно, мне нужна идея для проверки кода страны.
Пусть N - это штрих-код, тогда:
Pascal
1
2
3
4
5
6
7
8
9
10
N:=N div 11;
Case N of
0..9: S:='США';
30..37: S:='франция';
64: S:='Финляндия';
40..44: S:= 'Германия';
46: S:='Россия и СНГ';
48: S:='Молдова';
45,49: S:='Япония';
end;
Добавлено через 2 минуты
Цитата Сообщение от DeLuxe Посмотреть сообщение
То есть, как организовать проверку всех строк.
Pascal
1
2
3
4
5
while not eof(f) do
 begin
 readln(f,s);
 ...
 end;
Цитата Сообщение от DeLuxe Посмотреть сообщение
Вобщем лучше уж тогда цельный текст программы.
тогда лучше уж тогда в раздел "фриланс" обращаться.
0
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
04.01.2010, 17:21
Pascal
1
2
3
4
5
6
7
8
9
10
N:=N div 11;
Case N of
0..9: S:='США';
30..37: S:='франция';
64: S:='Финляндия';
40..44: S:= 'Германия';
46: S:='Россия и СНГ';
48: S:='Молдова';
45,49: S:='Япония';
end;
Полная ерунда.
Ошибки перечислять лень.

Да это все и неважно.
Как я понял из условия - файл CODE.TXT тоже следует прочитать в программе.
А не вбивать в код программы.
Поэтому сначала нужно организовать чтение файла CODE.TXT и сохранение в память.

Самый тупой вариант - записать по одной строке файла CODE.TXT в один элемент массива.
Следует только тщательно продумать как сохранить.
Пусть код страны - число от 1 до 9 цифр.
Тогда код страны мы можем сохранить в переменной типа int.
Следует учесть все три варианта записи
1) код1-код2 страна
2) код1 страна
3) код1,код2 страна

Сама программа должна читать входной файл.
Проверять правильность кода.
И если код правильный - то по ранее считанному массиву искать название страны.
Если код правильный, то вывести "ВЕРНЫЙ Россия и СНГ"
Если неправильный, то вывести "НЕВЕРНЫЙ"
Еще может быть вариант, когда код для страны не указан.
Например 481....
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.01.2010, 17:21
Помогаю со студенческими работами здесь

как в си ++ придать макс и мин значения вводимому числу
Ребята я новичек в си ++ вот задача к примеру с датами связана как зделать так чтобы при вводе даты (почисленно)ее ограничить,к примеру...

По вводимому числу от 1 до 11 (номеру класса) выдать соответствующее сообщение
написать программу, которая по водимому числу от 1 до 11 (номеру класса) выдает соответствующее сообщение <привет, к-классник>. ;...

По вводимому числу от 1 до 5 (номеру курса) выдать соответствующее приветствие
Написать программу, которая по вводимому числу от 1 до 5 (номеру курса) выдает соответствующее сообщение «Привет, k-курсник». Например,...

Написать программу,которая по вводимому числу выдает соответствующее сообщение
Написать программу,которая по вводимому числу от 1 до 3(номеру курса)выдает соответствующее...

Вычислить сумму тех натуральных чисел от 1 до 50, которые кратны числу, вводимому с клавиатуры
Написать программу, которая вычисляет сумму тех натуральных чисел от 1 до 50, которые кратны числу. вводимому с клавиатуры. При вводе числа...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru