Задача: Написать программу, которая из имеющегося массива строк формирует массив из строк, длина которых меньше либо равна 3 символа. Первоначальный массив можно ввести с клавиатуры , либо задать на старте выполнения алгоритма. При решении не рекоvендуется пользоваться коллекциями, лучше обойтись исключительно массивами.
Пример:
[«hello», «2», «world», «:-)»] -> [«2», «:-)»]
[«Russia», «Denmark», «Kazan»] -> []
Решение:
Console.Write(«Введите количество элементов массива: «);int m = Convert.ToInt32(Console.ReadLine());string [] stringArray = new string [m];void array(string [] stringArray){for (int i = 0;i<stringArray.Length;i++){Console.WriteLine($»Введите {i+1} элемент массива»);stringArray[i] = Console.ReadLine();}}string [] symbol(string [] stringArray){int n = 0;for (int i = 0;i<stringArray.Length;i++){if(stringArray[i].Length <=3)n++;}string [] rez = new string [n];int j = 0;for (int i = 0;i<stringArray.Length;i++){if(stringArray[i].Length <=3){rez[j] = stringArray[i];j++;}}return rez;}void printA(string [] stringArray){Console.Write(«[«);for (int i = 0;i<stringArray.Length;i++){Console.Write($»‘{stringArray[i]}’, «);}Console.Write(«]»);}array(stringArray);printA(symbol(stringArray));
Пояснение:
Процедура array — ввод данных в массив.
Процедура printA — вывод на экран значений массива.
Функция symbol — вначале считает количество элементов массива с тремя и менее символами. Затем создает массив нужной размерностью и вносит данные из введенного массива в результат функции.
Спасибо!