Почему в строчке if (list[i] == list[j]) индекс выходит за пределы массива?

Рейтинг: 0Ответов: 0Опубликовано: 07.01.2023

Если что вот задача:

Ваша программа так же получает на вход два числа в строковом формате, но теперь они могут быть разной длины. Найдите все уникальные элементы первого числа (значения, которые встречаются только 1 раз в обоих массивах)

Пример:

12335

1458

В данном случае уникально число 2 - оно существует в одном экземпляре

1 и 5 есть во втором массиве, а 3 встречается дважды в первом

В итоге ответ:

"Уникально число 2"

Sample Input:

12335 1458

Sample Output:

Уникально число 2

            string num1 = Console.ReadLine();
            string num2 = Console.ReadLine();
            string num = num1 + num2;
            char[] list = num.ToCharArray();
            string str = ""; 
            Console.WriteLine("Уникальное число ");
            foreach (int i in list)
            {
            foreach (int j in list)
            {
                if (i == j)
                    continue;
                if (list[i] == list[j]) // ошибка здесь!
                    continue;
                else
                    str += list[i];

            }
            Console.WriteLine(str);

Ответы

Ответов пока нет.