using System; class Program { // Метод за въвеждане на елементите на масива от клавиатурата static void InputArray(double[] array) { for (int i = 0; i < array.Length; i++) { Console.Write("array[" + i + "] = "); array[i] = double.Parse(Console.ReadLine()); } } // Метод за намиране на максималния елемент в масива static double FindMax(double[] array) { double max = array[0]; // Първоначално приемаме, че първият елемент е най-голям for (int i = 1; i < array.Length; i++) { if (array[i] > max) // Ако намерим по-голям елемент, заменяме стойността на max max = array[i]; } return max; // Връщаме намерения максимум } // Метод за отпечатване на всички елементи по-малки от дадено реално число X static void PrintSmallerThanX(double[] array, double x) { Console.WriteLine("Елементи по-малки от " + x + ":"); for (int i = 0; i < array.Length; i++) { if (array[i] < x) // Проверяваме дали текущият елемент е по-малък от X Console.WriteLine(array[i]); // Ако е, го отпечатваме } } static void Main() { int k; // Въвеждаме броя на елементите в масива, като гарантираме, че е между 2 и 20 do { Console.Write("Въведи k [2..20]: "); k = int.Parse(Console.ReadLine()); } while (k < 2 || k > 20); // Създаваме нов масив с дължина k double[] array = new double[k]; // Въвеждаме елементите на масива чрез метода InputArray InputArray(array); // Намираме максималния елемент чрез метода FindMax double max = FindMax(array); // Извеждаме всички елементи, които са по-малки от половината на максималния PrintSmallerThanX(array, max / 2); // Така програмата изпълнява всички стъпки на задачата: // 1. Въвеждане на елементи // 2. Намиране на MAX // 3. Извеждане на елементите по-малки от MAX/2 } }