Если в массиве произведение положительных элементов кратно 5, то увеличьте количество элементов на 5 - PascalABC.NET
Формулировка задачи:
пользователь вводит размерность массива и его элементы. создать динамический массив с количеством элементов, которые вводит пользователь. если в массиве произведение положительных элементов кратно 5, то увеличьте количество элементов на 5, и новые элементы заполните значениями 1, в противном случае удалить треть последних элементов массива.
не могу решить(
Решение задачи: «Если в массиве произведение положительных элементов кратно 5, то увеличьте количество элементов на 5»
textual
Листинг программы
var a:array of integer; kp,n,i:integer; p:LongInt; begin write('Введите размерность массива: '); readln(n); setlength(a,n); p:=1; kp:=0; for i:=0 to n-1 do begin readln(a[i]); if a[i]>0 then begin p:=p*a[i]; inc(kp); end; end; if (kp<>0) and (p mod 5 = 0) then begin setlength(a,n+5); for i:=n to n+4 do a[i]:=1; for i:=0 to n+4 do write(a[i]:4); end else begin setlength(a,n - n div 3); for i:=0 to n - n div 3 - 1 do write(a[i]:4); end; readln; setlength(a,0); end.
Объяснение кода листинга программы
- Объявлены переменные: a (массив целых чисел), kp, n, i (целые числа), p (длинное целое число).
- Пользователю предлагается ввести размерность массива.
- Массив a инициализируется указанным размером.
- Переменная p инициализируется единицей, kp - нулем.
- В цикле от 0 до n-1 происходит чтение элемента массива a[i] и проверка на положительность.
- Если элемент положительный, то он умножается на p, увеличивается kp и выполняется переход к следующему элементу.
- После цикла проверяется условие: если kp не равно нулю и произведение положительных элементов кратно 5, то выполняется блок кода для увеличения размера массива на 5.
- В цикле от n до n+4 происходит запись единицы в новый элемент массива a[i].
- В цикле от 0 до n+4 происходит запись элемента массива a[i] в консоль, предварительно обрезая до 4 символов.
- Если условие из пункта 7 не выполняется, то выполняется блок кода для уменьшения размера массива на 3.
- В цикле от 0 до n - n div 3 - 1 происходит запись элемента массива a[i] в консоль, предварительно обрезая до 4 символов.
- Программа ожидает ввода пользователя.
- Массив a очищается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д