Удвоить каждое вхождение элемента E в список L, где значение E вводится с клавиатуры - PascalABC.NET
Формулировка задачи:
Помогите написать программу с использованием динамических списков. Не каждый может в динамические списки
Удваивает каждое вхождение элемента E в список L где значение E вводится с клавиатуры
Решение задачи: «Удвоить каждое вхождение элемента E в список L, где значение E вводится с клавиатуры»
textual
Листинг программы
begin Randomize; var L := New List<Integer>; for var i := 1 to ReadLnInteger('Число элементов списка: n =') do L.Add(Random(0,99)); WriteLn('Создан список и заполнен случайными числами:', NewLine, 'L = ', L); var E := ReadLnInteger('Введите элемент, вхождение которого нужно удвоить: Е ='); for var i := L.Count - 1 downto 0 do if E = L[i] then L.Insert(i, E); WriteLn('Новый список:', NewLine, 'L = ', L); end.
Объяснение кода листинга программы
- Импортируется пространство имен System.
- Создается пустой список L типа List
. - Запрашивается количество элементов списка (n) с помощью функции ReadLnInteger.
- С помощью цикла for добавляются n случайных чисел в список L с помощью метода Add.
- Выводится сообщение о создании списка и его заполнении случайными числами.
- Запрашивается элемент E, вхождение которого нужно удвоить, с помощью функции ReadLnInteger.
- С помощью цикла for проходит по всем элементам списка L в обратном порядке.
- Если элемент списка L равен E, то с помощью метода Insert вставляется новый элемент E перед текущим элементом списка.
- Выводится новый список L.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д