Определить, сколько элементов стека имеют значения меньше среднего значения от всех элементов - C# (196299)

Узнай цену своей работы

Формулировка задачи:

Ребят если не сложно,помогите Создать стек из целых случайных чисел и определить сколько элементов стека имеют значения меньше среднего значения от всех элементов и удалить эти элементы

Решение задачи: «Определить, сколько элементов стека имеют значения меньше среднего значения от всех элементов»

textual
Листинг программы
 public class EGStack : Stack<int>
    {
 
        private int _avarage;
        private bool _counted;
 
        public new void Push(int item)
        {
            _avarage = _avarage + item;
            base.Push(item);
        }
 
 
        public int GetAvarage()
        {
            int temp = _avarage;
            if (!_counted)
            {
                temp = _avarage / this.Count;
            }
            return temp;
        }
 
        public new int Pop()
        {
            try
            {
                if (!_counted)
                {
                    _avarage /= this.Count;
                    _counted = true;
                }
 
                int item;
                do
                {
                    item = base.Pop();
                } while (item > _avarage);
                return item;
            }
            catch (InvalidOperationException)
            {
                return 0;
            }
 
        }
    }
 
 
 
class Program
    {
        static void Main(string[] args)
        {
            EGStack st = new EGStack();
 
            Random r = new Random();
 
            for (int i = 0; i < 10; i++)
            {
                
                st.Push(r.Next(1,1000));
            }
 
            foreach(int item in st)
            {
                Console.Write("{0} ", item);
            }
 
            Console.WriteLine();
            Console.WriteLine(st.GetAvarage());
 
            for (int i = st.Pop(); i != 0;i=st.Pop())
            {
                Console.Write("{0} ", i);
            }
 
            Console.WriteLine();
        }
    }

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


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

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

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