Разработать собственный класс для создания стека, хранящего символы - C#
Формулировка задачи:
Разработать собственный класс MyStack для создания стека, хранящего символы. В созданном стеке найти и удалить первый от вершины гласный символ.
Решение задачи: «Разработать собственный класс для создания стека, хранящего символы»
textual
Листинг программы
class MyStack { public Stack<char> Data { get; set; } public MyStack(char[] data) { Data = new Stack<char>(data); } public void Print() { foreach (char c in Data) Console.Write(c + " "); } public void RemoveFirstChar(char[] chars) { Stack<char> tempStack = new Stack<char>(); while (Data.Count > 0 && !chars.Any(a => a == Data.Peek())) tempStack.Push(Data.Pop()); if (Data.Count > 0) Data.Pop(); foreach (char c in tempStack) Data.Push(c); } } class Program { static void Main() { MyStack myStack = new MyStack(new char[] { 'а', 'б', 'в', 'г', 'д', 'е', 'ж', 'з' }); Console.Write("Стек до изменений: "); myStack.Print(); char[] template = { 'а', 'е', 'ё', 'и', 'о', 'у', 'ы', 'э', 'ю', 'я' }; myStack.RemoveFirstChar(template); Console.Write("\nСтек после изменений: "); myStack.Print(); Console.ReadKey(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д