Удаление элемента из 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(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д