Я написал программу, которая вычисляет разницу двух строк или вычисляет расстояние Хэмминга.
Я бегу в режиме отладки. И я увидел, что у string first
отсутствует первый элемент строки. Но string second
это хорошо!
Когда я проверял, длина первого и второго равны.
Forexample:
Я набрал это: 00011
И в режиме отладки это значение только: 0011
, Или я набрал это: «это», при отладке реальное значение только «его» * 1013 *
Кто-нибудь может объяснить мне, почему отсутствует первый элемент строки?
Код:
while (Console.Read() != 'X')
{
string first = Console.ReadLine();
string second = Console.ReadLine();
int distance = 0;
for (int i = 0; i < first.Length; i++)
{
if (first[i]!= second[i])
{
++distance;
}
}
Console.WriteLine("Hamming distance is {0}.", distance);
}
Я пытался изменить итерацию, например, цикл был ++ i или первый [i-1], но это не решило мою проблему.