Запросить индекс элемента массива у пользователя и при нахождении вывести его, если нет, то вывести ошибку
Напишите программу, которая запрашивает у пользователя 5 целых чисел и сохраняет их в массиве. После программа сортирует массив по возрастанию и выводит отсортированный массив на экран. Затем программа запрашивает у пользователя число и находит его индекс в массиве. Если число не найдено, программа выводит сообщение об ошибке.
С частью по запросу и выводу массива по возрастанию у меня получилось, а вот найти и вывести индекс числа - не получается. Вся проблема в том, что при сравнении ввода от пользователя и данных массива пишет, что нельзя преобразовать данные, то есть при сравнении будут разные типы данных.
int[] numbers = new int[5];
Console.WriteLine("Введите 5 чисел");
for (int i = 0; i < numbers.Length; i++)
{
int userInput = Convert.ToInt32(Console.ReadLine());
numbers[i] = userInput;
}
Array.Sort(numbers);
for (int j = 0; j < numbers.Length; j++)
{
Console.Write(numbers[j] + " ");
}
Console.WriteLine("Введите число");
int userInput2 = Convert.ToInt32(Console.ReadLine);
for (int m = 0; m < numbers.Length; m++)
{
if (numbers[m] = userInput2)
{
Console.WriteLine($"Индекс числа {userInput2} будет {numbers.GetValue(userInput2)}");
}
else
{
Console.WriteLine("Ошибка ввода, попробуйте еще раз");
}
}
Источник: Stack Overflow на русском