Определить местоположение минимального элемента массива. Обнулить элементы, стоящие до него - PascalABC.NET
Формулировка задачи:
В одномерном массиве из 10 элементов определить местоположение минимального элемента. Обнулить элементы, стоящие до него, но не сам этот элемент. (Обнулить - значит, записать 0 на место элемента, то есть выполнить A[i]:=0.) Измененный массив вывести на экран.
Решение задачи: «Определить местоположение минимального элемента массива. Обнулить элементы, стоящие до него»
textual
Листинг программы
const n=10;
var a:array[1..n] of integer;
i,imin:integer;
begin
randomize;
writeln('Исходный массив');
imin:=1;
for i:=1 to n do
begin
a[i]:=1+random(100);
write(a[i]:3);
if a[i]<a[imin] then imin:=i;
end;
writeln;
writeln('Минимальный элемент=',a[imin],' в позиции ',imin);
if imin=1 then write('До минимального элемента других нет')
else
begin
for i:=1 to imin-1 do
a[i]:=0;
writeln('Измененный массив');
for i:=1 to n do
write(a[i]:3)
end;
end.
Объяснение кода листинга программы
- Объявляется константа
nравная 10, которая определяет размер массива. - Объявляется массив
aразмером 10, который будет содержать целочисленные значения. - Объявляются две переменные
iиiminтипа целочисленные, которые будут использоваться в дальнейшем в коде. - Запускается процедура случайной инициализации массива
a. Для каждого элемента массива в диапазоне от 1 до 100 генерируется случайное число, которое затем присваивается соответствующему элементу массиваa. - Выводится исходный массив
aс помощью циклаforи функцииwrite. Каждое значение массива выводится в консоль, предварительно округлив его до трех знаков после запятой. - В процессе вывода значений массива
aв переменнойiminхранится индекс элемента с минимальным значением. Если текущий элемент меньше значения элемента в позицииimin, то значение переменнойiminобновляется. - После вывода всех значений массива
aвыводится сообщение с названиемМинимальный элемент=и значением элемента в позицииimin. - Если
iminравно 1, то выводится сообщениеДо минимального элемента других нет. - В противном случае начинается цикл
for, который проходит по всем элементам массива от 1 доimin-1и обнуляет их. - Выводится измененный массив
aс помощью циклаforи функцииwrite. - Код завершается.