PROGRAM B01;
CONST
max = 11;
TYPE
vector = array[1..max]of integer;
VAR
M, I, K:vector;
j:byte;
{ Массивы I,K предварительно реорганизовать следующим образом: на первом
месте, в данных массивах должен стоять элемент с минимальным значением}
procedure reorganize_vector(var vt:vector);
var i, j:byte;
min, tmp:integer;
begin
// вначале ищем минимальный элемент и запоминаем его место в массиве
j:=1;//
min:=vt[1];//назначаем наименьшим - первый элемент
for i:=2 to max do
if (min>vt[i]) then begin
min:=vt[i];
j:=i;//индекс наименьшего числа
end;
// теперь меняем местами первый элемент массива с наименьшим числом
tmp := vt[1];//запоминаем значение первого элемента
vt[1] := min;//меняем его на наименьший элемент
vt[j] := tmp;//на место наименьшего ставим значение из первого элемента
end;
// процедура для вывода массива на экран
procedure print_vector(var vt:vector);
var j:byte;
begin
for j:=1 to max do
write(vt[j]:6);
writeln(' ');
end;
BEGIN
writeln('Дано:');
//заполняем массивы случаынйми данными
randomize;
for j:=1 to max do begin
I[j]:=random(-128,127);
K[j]:=random(-128,127);
end;
//выводим их на экран
write('массив I[',max,']: ');
print_vector(I);
write('массив K[',max,']: ');
print_vector(K);
writeln(' ');
writeln('Реорганизовать массивы так, чтобы на первом месте ');
writeln('должен стоять элемент с минимальным значением');
reorganize_vector(I);
reorganize_vector(K);
write('массив I[',max,']: ');
print_vector(I);
write('массив K[',max,']: ');
print_vector(K);
writeln(' ');
writeln('Сформировать массив М[',max,'], элементы которого вычисляются');
writeln('по формуле M[j] = I[j] + K[j]');
for j:=1 to max do
M[j] := I[j] + K[j];
write('массив M[',max,']: ');
print_vector(M);
END.