Разработать собственный класс для создания стека, хранящего символы - 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();
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.556 из 5
Похожие ответы