Как найти расстояние между символами в C с помощью обхода

Я пытаюсь найти расстояние между двумя символами в алфавите. Тем не менее, можно перейти от A->Z или Z->A за один шаг. Учитывая два символа, как мне найти расстояние?

1 ответ

Решение

Вычтите два символа друг от друга, чтобы получить положительный результат, если он отрицательный.

Оттуда ответом является либо это значение, либо, если оно больше 13, это 26 - значение.

char a = '<SOME LETTER>';
char b = '<SOME LETTER>';

char distance = abs(a-b);
if (distance > 13) {
  distance = 26 - distance;
}
Другие вопросы по тегам