Перечислимый тип - C#

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

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

Дано type имя = (Аня, Валя, Женя, Петя, Саша, Таня, Шура, Юра); данные = record пол : (муж, жен); рост : 140..200 end; группа = array [имя] of данные; Описать функцию СредРост(ГР), определяющую средний рост женщин из группы ГР. Буду благодарен за помощь.

Решение задачи: «Перечислимый тип»

textual
Листинг программы
class Program
    {
        static void Main(string[] args)
        {
            List<People> group = new List<People>();
            Random rand = new Random();
            group.Add(new People { Name = "Аня", Height = rand.Next(140, 200), isWoman = true });
            group.Add(new People { Name = "Валя", Height = rand.Next(140, 200), isWoman = true });
            group.Add(new People { Name = "Женя", Height = rand.Next(140, 200), isWoman = false });
            group.Add(new People { Name = "Петя", Height = rand.Next(140, 200), isWoman = false });
            group.Add(new People { Name = "Саша", Height = rand.Next(140, 200), isWoman = false });
            group.Add(new People { Name = "Таня", Height = rand.Next(140, 200), isWoman = true });
            group.Add(new People { Name = "Шура", Height = rand.Next(140, 200), isWoman = false });
            group.Add(new People { Name = "Юра", Height = rand.Next(140, 200), isWoman = true });
            foreach (var item in group)
                Console.WriteLine("Имя : {0} Рост: {1} Пол: {2}",item.Name,item.Height,item.isWoman ? "Женский" : "Мужской");
            Console.WriteLine();
            Console.WriteLine("Средний рост среди женщин: " + AvarageOfHeight(group));
            Console.ReadKey();
        }
        public static double AvarageOfHeight(List<People> peoples)
        {
            var womans = peoples.Where(x => x.isWoman);
            return womans.Sum(x=>x.Height)/womans.Count();
        }
    }
    public class People
    {
        public string Name { get; set; }
        public bool isWoman { get; set; }
        public int Height { get; set; }
    }

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


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

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

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