Удаление элемента из List<> со сдвигом - C#
Формулировка задачи:
Дан список от 1 до N элементов(N вводится с клавиатуры). Пользователь вводит K-ый элемент(он удаляется).Затем пользователь вводит R-ый элемент,который отсчитывается не сначала,а с K+1 элемента.
Например,элементы 1 2 3 4 5 6 7.Пользователь вводит 3,получается 1 2 4 5 6 7.Пользователь снова вводит значение,на этот раз 2,получается 1 2 4 6 7.Пользователь вводит снова 3,получается 2 4 6 7.
Решение задачи: «Удаление элемента из List<> со сдвигом»
textual
Листинг программы
- static void Main()
- {
- List<int> list = new List<int> { 1, 2, 3, 4, 5, 6, 7 };
- int n, k = 0;
- while (list.Count > 0 && int.TryParse(Console.ReadLine(),
- NumberStyles.Integer,
- CultureInfo.InvariantCulture,
- out n))
- {
- k += --n;
- int removeAt = (k + 1) % list.Count;
- Console.WriteLine("RemoveAt: {0}", removeAt != 0 ? removeAt : list.Count);
- RemoveElement(list, k);
- Console.WriteLine(string.Join(" ", list));
- }
- Console.WriteLine("End.");
- Console.ReadKey();
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д