Как вывести 3 наименьших числа из списка?
Цель программы-отобразить 3 наименьших числа из списка, предоставленного пользователем.
Проблема, с которой я столкнулся:
При выполнении, когда я ввожу список, разделенный запятыми, например, 5,1,9,2,10. Я вернусь, 1, 10 и 2. Вместо того, чтобы вернуться 1, 2 и 5.
Что я уже пробовал:
public void MinimumThree() { var min = 100; Console.WriteLine("Enter a list of numbers (seperated by ,): "); string input = Console.ReadLine(); string errorMessage = "Invalid List. Try Again: "; bool loopContinue = true; while (loopContinue == true) { string[] list = input.Split(','); if (input == " " || list.Count() < 5) { Console.Write(errorMessage); input = Console.ReadLine(); } else { loopContinue = false; Console.WriteLine(); // Convert list elements to int for (var i = 0; i < list.Length; i++) { int.Parse(list[i]); } foreach (var x in list) { Console.WriteLine(x); } // Sort list Array.Sort(list); // Print 3 smallest Console.WriteLine("Three smallest numbers: "); for (var i = 0; i < 3; i++) { Console.WriteLine(list[i]); } } } } }