Advertisement
Guest User

Untitled

a guest
Jun 25th, 2019
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.33 KB | None | 0 0
  1. using System;
  2. using System.Linq;
  3. using System.Collections.Generic;
  4.  
  5. namespace ListManipulationAdvanced
  6. {
  7. class Program
  8. {
  9. static void Main(string[] args)
  10. {
  11. List<int> numbers = Console.ReadLine()
  12. .Split()
  13. .Select(int.Parse)
  14. .ToList();
  15. bool isManipulated = false;
  16. string command;
  17. while ((command = Console.ReadLine()).ToLower() != "end")
  18. {
  19. string[] splittedCommand = command.Split(" ");
  20.  
  21. switch (splittedCommand[0])
  22. {
  23. case "Contains":
  24. if (numbers.Contains(int.Parse(splittedCommand[1])))
  25. {
  26. Console.WriteLine("Yes");
  27. }
  28. else
  29. {
  30. Console.WriteLine("No such number");
  31. }
  32. break;
  33.  
  34. case "PrintEven":
  35. PrintEven(numbers);
  36. break;
  37.  
  38. case "PrintOdd":
  39. PrintOdd(numbers);
  40. break;
  41.  
  42. case "GetSum":
  43. GetSum(numbers);
  44. break;
  45.  
  46. case "Filter":
  47. if (splittedCommand[1] == "<")
  48. {
  49. PrintFilterSmallThanNumber(numbers, int.Parse(splittedCommand[2]));
  50. }
  51. else if (splittedCommand[1] == "<=")
  52. {
  53. PrintFilterSmallOrEqualThanNumber(numbers, int.Parse(splittedCommand[2]));
  54. }
  55. else if (splittedCommand[1] == ">=")
  56. {
  57. PrintFilterBiggerOrEqualThanNumber(numbers, int.Parse(splittedCommand[2]));
  58. }
  59. else
  60. {
  61. PrintFilterBiggerThanNumber(numbers, int.Parse(splittedCommand[2]));
  62. }
  63.  
  64. break;
  65.  
  66. case "Remove":
  67. numbers.Remove(int.Parse(splittedCommand[1]));
  68. isManipulated = true;
  69. break;
  70.  
  71. case "Add":
  72. numbers.Add(int.Parse(splittedCommand[1]));
  73. isManipulated = true;
  74. break;
  75.  
  76. case "RemoveAt":
  77. numbers.RemoveAt(int.Parse(splittedCommand[1]));
  78. isManipulated = true;
  79. break;
  80.  
  81. case "Insert":
  82. numbers.Insert(int.Parse(splittedCommand[2]), int.Parse(splittedCommand[1]));
  83. isManipulated = true;
  84. break;
  85. }
  86. }
  87.  
  88. if (isManipulated == true)
  89. {
  90. Console.WriteLine(string.Join(" ", numbers));
  91. }
  92. }
  93.  
  94. static void PrintEven(List<int> numbers)
  95. {
  96. for (int i = 0; i < numbers.Count; i++)
  97. {
  98. if (numbers[i] % 2 == 0)
  99. {
  100. Console.Write(numbers[i] + " ");
  101. }
  102. }
  103. Console.WriteLine();
  104. }
  105.  
  106. static void PrintOdd(List<int> numbers)
  107. {
  108. for (int i = 0; i < numbers.Count; i++)
  109. {
  110. if (numbers[i] % 2 != 0)
  111. {
  112. Console.Write(numbers[i] + " ");
  113. }
  114. }
  115. Console.WriteLine();
  116. }
  117.  
  118. static void GetSum(List<int> numbers)
  119. {
  120. Console.WriteLine(numbers.AsQueryable().Sum());
  121. }
  122.  
  123. static void PrintFilterSmallThanNumber(List<int> numbers, int range)
  124. {
  125. for (int i = 0; i < numbers.Count; i++)
  126. {
  127. if (numbers[i] < range)
  128. {
  129. Console.Write(numbers[i] + " ");
  130. }
  131. }
  132. Console.WriteLine();
  133. }
  134.  
  135. static void PrintFilterSmallOrEqualThanNumber(List<int> numbers, int range)
  136. {
  137. for (int i = 0; i < numbers.Count; i++)
  138. {
  139. if (numbers[i] <= range)
  140. {
  141. Console.Write(numbers[i] + " ");
  142. }
  143. }
  144. Console.WriteLine();
  145. }
  146.  
  147. static void PrintFilterBiggerOrEqualThanNumber(List<int> numbers, int range)
  148. {
  149. for (int i = 0; i < numbers.Count; i++)
  150. {
  151. if (numbers[i] >= range)
  152. {
  153. Console.Write(numbers[i] + " ");
  154. }
  155. }
  156. Console.WriteLine();
  157. }
  158.  
  159. static void PrintFilterBiggerThanNumber(List<int> numbers, int range)
  160. {
  161. for (int i = 0; i < numbers.Count; i++)
  162. {
  163. if (numbers[i] > range)
  164. {
  165. Console.Write(numbers[i] + " ");
  166. }
  167. }
  168. Console.WriteLine();
  169. }
  170. }
  171. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement