EAN-8 штрих - коду включає в себе 7 цифр інформації та 8 - ї контрольної цифрою.
Контрольна сума обчислюється шляхом множення цифр на 3 і 1 по черзі, додавання результатів і віднімання від наступного кратного 10.
Наприклад, з урахуванням цифр 2103498
:
Digit: 2 1 0 3 4 9 8
Multiplier: 3 1 3 1 3 1 3
Result: 6 1 0 3 12 9 24
Сума цих отриманих цифр дорівнює 55 , тому цифра контрольної суми становить 60 - 55 = 5
Змагання
Ваше завдання полягає в тому, щоб, давши 8-значний штрих-код, переконатися, чи він дійсний - повернути триєдне значення, якщо контрольна сума дійсна, і помилково вказати інше.
- Ви можете взяти інформацію в будь-якій з наступних форм:
- Рядок, довжиною 8 символів, що представляє цифри штрих-коду
- Список 8 цілих чисел, цифри штрих-коду
- Невід’ємне ціле число (ви можете припустити провідні нулі там, де їх не вказано, тобто
1
=00000001
, або запитати введення з заданими нулями)
- Вбудовані, які обчислюють контрольну суму EAN-8 (тобто беруть перші 7 цифр і обчислюють останню), заборонені.
- Це код-гольф , тому найкоротша програма (у байтах) виграє!
Випробування
20378240 -> True
33765129 -> True
77234575 -> True
00000000 -> True
21034984 -> False
69165430 -> False
11965421 -> False
12345678 -> False