Advertisement
desislava_topuzakova

Farm

Jun 30th, 2024
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.67 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. namespace AlgorithmsRegularExam
  6. {
  7. public class Farm
  8. {
  9.  
  10. private string name;
  11. private List<Animal> animals;
  12.  
  13. public Farm()
  14. {
  15.  
  16. }
  17.  
  18. public Farm(string name)
  19. {
  20. Name = name;
  21. Animals = new List<Animal>();
  22. }
  23.  
  24. public string Name
  25. {
  26. get
  27. {
  28. return name;
  29. }
  30. set
  31. {
  32. name = value;
  33. }
  34. }
  35.  
  36. public List<Animal> Animals
  37. {
  38. get
  39. {
  40. return animals;
  41. }
  42. set
  43. {
  44. animals = value;
  45. }
  46. }
  47.  
  48. public void AddAnimal(string type, int weight)
  49. {
  50. Animal animal = new Animal(type, weight);
  51. Animals.Add(animal);
  52. }
  53.  
  54. public double AverageWeight()
  55. {
  56. double sum = 0;
  57. int count = 0;
  58. foreach (Animal animal in Animals)
  59. {
  60. sum += animal.Weight;
  61. count++;
  62. }
  63.  
  64. return sum / count;
  65. }
  66.  
  67. public List<string> FilterAnimalsByWeight(int weight)
  68. {
  69. List<string> animals = new List<string>();
  70. foreach (Animal animal in Animals)
  71. {
  72. if (animal.Weight < weight)
  73. {
  74. animals.Add(animal.Type);
  75. }
  76. }
  77. return animals;
  78. }
  79.  
  80. public List<Animal> SortAscendingByType()
  81. {
  82. List<Animal> sorted = Animals.OrderBy(animal => animal.Type).ToList();
  83. Animals = sorted;
  84. return sorted;
  85. }
  86.  
  87. public List<Animal> SortDescendingByWeight()
  88. {
  89. List<Animal> sorted = Animals.OrderByDescending(animal => animal.Weight).ToList();
  90. Animals = sorted;
  91. return sorted;
  92. }
  93.  
  94. public bool CheckAnimalIsInFarm(string type)
  95. {
  96. foreach (Animal animal in Animals)
  97. {
  98. if (animal.Type == type)
  99. {
  100. return true;
  101. }
  102. }
  103.  
  104. return false;
  105. }
  106.  
  107. public string[] ProvideInformationAboutAllAnimals()
  108. {
  109. List<string> infoList = new List<string>();
  110. foreach (Animal animal in Animals)
  111. {
  112. infoList.Add(animal.ToString());
  113. }
  114. return infoList.ToArray();
  115. }
  116. }
  117. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement