Перечислимый тип - 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; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д