VickSuna

Untitled

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