Ваш метод ожидает, что лицензионный ключ будет целым числом.
Ваш метод проверяет, соответствует ли лицензионный ключ всем приведенным ниже требованиям:
## Требования:
1. 16 цифр
2. начинается с 51, 52, 53, 54, 55
3. совпадение контрольной суммы
Для сопоставления контрольной суммы вам нужно 3 шага:
а) Умножьте все остальные цифры на 2, начиная с последней до последней цифры. Если результат представляет собой 2-значное число (например: 9 * 2 = 18) - добавляйте эти цифры в это число, пока результат не станет равным 1-значному числу (1 + 8 = 9).
Затем сложите эти цифры вместе.
б) Добавьте сумму к сумме цифр, которые не были умножены на 2
c) Если последняя цифра суммы равна 0 (или, если говорить более формально, если сумма по модулю 10 совпадает с 0), контрольная сумма совпадает!
### Пример:
5 1 6 9 2 9 4 8 1 4 1 5 3 3 2 15 1 6 9 2 9 4 8 1 4 1 5 3 3 2 1
5 * 2 + 1 + 6 * 2 + 9 + 2 * 2 + 9 + 4 * 2 + 8 + 1 * 2 + 4 + 1 * 2 + 5 + 3 * 2 + 3 + 2 * 2 + 1
1 + 1 + 1 + 2 + 9 + 4 + 9 + 8 + 8 + 2 + 4 + 2 + 5 + 6 + 3 + 4 + 1 = 70
70% 10 = 0 - это матч!
## Метод return:
Ваш метод вернет истину, если лицензионный ключ действителен, и ложь - если лицензионный ключ недействителен
## 5 обязательных элементов ruby для использования в вашей реализации
1. модуль (%)
2. диапазон (.. ...)
3. троичный оператор (? :)
4. уменьшить или отклонить
5. один из методов: каждый, each_with_index или each_index