Удалить те элементы массива, которые кратны заданному числу k - Pascal
Формулировка задачи:
Дан список, содержащий натуральные числа. Удалить те его элементы, которые кратны заданному числу k.
Решение задачи: «Удалить те элементы массива, которые кратны заданному числу k»
textual
Листинг программы
const maxS = 100; var a : array [1..maxS] of Integer; k, i, j, n : Integer; begin Write('Число элементов списка (до 100): n = '); ReadLn(n); WriteLn('Введите через пробел все элементы списка:'); for i := 1 to n do Read(a[i]); WriteLn; WriteLn('Список:'); for i := 1 to n do Write(#32, a[i]); WriteLn; Write('Удалить из списка числа кратные числу k = '); ReadLn(k); for i := n downto 1 do if a[i] mod k = 0 then begin dec(n); for j := i to n do a[j] := a[j + 1]; end; WriteLn('Список:'); for i := 1 to n do Write(#32, a[i]); WriteLn; end.
Объяснение кода листинга программы
- Объявляется константа
maxS
со значением 100. - Объявляется переменная
a
- массив целых чисел со структурой с 1 поmaxS
элементы. - Объявляются переменные
k
,i
,j
,n
- все целочисленные. - Вводится значение переменной
n
с клавиатуры, предположительно количество элементов в списке. - Выводится сообщение
Введите через пробел все элементы списка:
, и пользователь вводит элементы списка. - Выводится сообщение
Список:
и выводятся все элементы списка. - Вводится значение переменной
k
с клавиатуры, предположительно число, кратные которому нужно удалить из списка. - Запускается цикл от
n
до 1, и если элемент массиваa
кратенk
, то:- Уменьшается значение переменной
n
на 1. - Запускается цикл для сдвига всех последующих элементов влево.
- Уменьшается значение переменной
- Выводится сообщение
Список:
и выводятся все элементы списка после удаления элементов, кратныхk
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д