Для создания алгоритма, который преобразует числовые значения, записанные словами, в цифровой формат, мы можем использовать словарь, в котором каждое число (в виде слова) будет отображаться на его числовое значение. Затем мы пройдемся по вектору строк, проверяя каждое слово и добавляя соответствующие значения в новый массив, если слово является числом.
Вот пример реализации на Python:
```python
def tokens_to_int(tokens):
# Словарь, который содержит соответствие между словами и числами
num_words = {
"zero": 0,
"one": 1,
"two": 2,
"three": 3,
"four": 4,
"five": 5,
"six": 6,
"seven": 7,
"eight": 8,
"nine": 9,
"ten": 10,
"eleven": 11,
"twelve": 12,
"thirteen": 13,
"fourteen": 14,
"fifteen": 15,
"sixteen": 16,
"seventeen": 17,
"eighteen": 18,
"nineteen": 19,
"twenty": 20,
# Добавьте больше чисел по мере необходимости
}
# Новый массив для хранения числовых значений
result = []
# Проходим по каждому токену (слову) в предоставленном списке
for token in tokens:
# Проверяем, является ли токен числом в словаре
if token in num_words:
# Если да, добавляем соответствующее значение в результирующий массив
result.append(num_words[token])
return result
# Пример использования:
input_tokens = ["one", "two", "three", "hello", "five"]
output_numbers = tokens_to_int(input_tokens)
print(output_numbers) # Вывод: [1, 2, 3, 5]
```
### Пояснение кода:
1. **Словарь `num_words`**: Он содержит соответствия между словами и их числовыми значениями. Вы можете добавлять больше числа, если это необходимо.
2. **Цикл `for`**: Мы перебираем каждый элемент в списке `tokens`. Если элемент найден в словаре, мы добавляем его числовое значение в массив `result`.
3. **Возврат результата**: Функция возвращает массив числовых значений.
### Как использовать:
Вы можете вызывать функцию `tokens_to_int`, передавая ей массив строк, и она вернет массив чисел, полученных из слов.