Advertisement
Guest User

04.List Operation

a guest
Oct 20th, 2019
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.69 KB | None | 0 0
  1. using System;
  2. using System.Linq;
  3. using System.Collections.Generic;
  4. namespace _09_FactorialDivision
  5. {
  6. class Program
  7. {
  8. static void Main(string[] args)
  9. {
  10. List<int> numbers = Console.ReadLine()
  11. .Split(" ")
  12. .Select(int.Parse)
  13. .ToList();
  14.  
  15. string line = Console.ReadLine();
  16.  
  17. while (line!= "End")
  18. {
  19. string[] tokens = line.Split(" ");
  20. string cmd = tokens[0];
  21.  
  22. if (cmd == "Add")
  23. {
  24. int numberCommand = int.Parse(tokens[1]);
  25. numbers.Add(numberCommand);
  26. }
  27. else if (cmd == "Insert")
  28. {
  29. int numberCommand = int.Parse(tokens[1]);
  30. int index = int.Parse(tokens[2]);
  31.  
  32. if (index >= 0 && index < numbers.Count)
  33. {
  34. numbers.Insert(index, numberCommand);
  35. }
  36. else
  37. {
  38. Console.WriteLine("Invalid index.");
  39. }
  40. }
  41. else if(cmd == "Remove")
  42. {
  43.  
  44. int index = int.Parse(tokens[1]);
  45. if (index >= 0 && index < numbers.Count)
  46. {
  47. numbers.RemoveAt(index);
  48. }
  49. else
  50. {
  51. Console.WriteLine("Invalid index");
  52. }
  53.  
  54. }
  55. else if (line.Contains("Shift left"))
  56. {
  57. int count = int.Parse(tokens[2]);
  58.  
  59. for (int i = 0; i < count; i++)
  60. {
  61. int currentNumber = numbers[0];
  62. numbers.RemoveAt(0);
  63. numbers.Add(currentNumber);
  64.  
  65. }
  66. }
  67. else if (line.Contains("Shift right"))
  68. {
  69. int count = int.Parse(tokens[2]);
  70.  
  71. for (int i = 0; i < count; i++)
  72. {
  73. int currentNumber = numbers[numbers.Count - 1];
  74. numbers.RemoveAt(numbers.Count - 1);
  75. numbers.Insert(0, currentNumber);
  76.  
  77. }
  78. }
  79.  
  80. line = Console.ReadLine();
  81. }
  82. Console.WriteLine(string.Join(" ",numbers));
  83.  
  84. }
  85.  
  86.  
  87.  
  88.  
  89. }
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement