Поделитесь своими знаниями, ответьте на вопрос:
Ребят нужно в течении дня скинуть Условие 2. Элементы одномерных массивов X и Y упорядочены по воз-растанию. Объединить элементы этих двух массивов в один массив Z так, что-бы он оказался упорядоченным по возрастанию. … k=i=j=0; while(i<n && j<n) { if (a[i]<b[j]) { c[k]=a[i]; i++; } else { c[k]=b[j]; j++; } k++; } while(i<n) { c[k]=a[i]; i++; k++; } while(j<n) { c[k]=b[j]; j++; k++; }
1. Просматривая строку массива от первого элемента, найти минимальный элемент и поместить его на место первого элемента, а первый — на место минимального.
2. Просматривая строку массива от второго элемента, найти минимальный элемент и поместить его на место второго элемента, а второй — на место минимального.
3. И так далее до предпоследнего элемента.
Решение:
//Pascal
const
n = 7;
var
a: array[1..n, 1..n] of integer;
i, j, min, ind: integer;
//Заполнение массива сл. числами и вывод на экран
begin
for i := 1 to n do
begin
for j := 1 to n do
begin
a[i, j] := random(100);
write(a[i, j]:4);
end;
writeln;
end;
//Сортировка строки матрицы прямым выбором
for i := 1 to n - 1 do
begin
min := a[4, i];
ind := i;
for j := i + 1 to n do
if a[4, j] < min then
begin
min := a[4, j];
ind := j;
end;
a[4, ind] := a[4, i];
a[4, i] := min;
end;
writeln;
//вывод отсортированной строки
for j := 1 to n do
begin
write(a[4, j]:4);
end;
end.