Помощь - Поиск - Пользователи - Календарь
Полная версия: Массив
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Lorien
Есть задачка: Найти минимальный элемент одномерного массива и поменять местами пятый элемент с минимальным. Вывести на экран исходный и результирующий массивы.
Минимальный меняется с 5 элементом,но так же он остается еще и на своем месте.
Например: исходный массив 1 2 3 4 5
min=1
новый массив 1 2 3 4 1
Код

program z1;
var a: array [1..5] of integer;
    i,min,c: integer;
begin
for i:=1 to 5 do
readln(a[i]);
for i:=1 to 5 do
writeln('a[i]=',a[i]);
min:=a[1];
for i:=1 to 5 do
if a[i]<min then min:=a[i];
writeln('min=',min);
readln;
a[i]:=min;
min:=a[5];
a[5]:=a[i];
writeln;
for i:=1 to 5 do
writeln(a[i],' ');
readln;
end.
Bokul
Ты сам себе противоречешь: сначала написал что надо поменять
местами 5-ый элемент с найменьшим, потом - присвоить 5-ому элементу
наименьшее значение.
Написал решения для последнего варианта, даже не написал, а чуть-чуть
подправил твое.
Код
const num=10; {количество елеметов в массиве}
var a:array[1..num] of integer;
    i,min,n_min,c:integer;
begin
for i:=1 to num do
readln(a[i]);
for i:=1 num do
writeln('a',i,' = ',a[i]);
min:=a[1];
for i:=1 to num do
if a[i]<min then min:=a[i];
writeln('min = ',min);
a[5]:=min;
for i:=1 to num do
writeln('a',i,' = ',a[i]);
readln;
end.
Lorien
Спасибо, я тебе очень благодарна... ты спас меня
klem4
no1.gif

Цитата
Найти минимальный элемент одномерного массива и поменять местами пятый элемент с минимальным.


//...
nmin := 1;

for i := 2 to n do
if x[i] < x[nmin] then nmin := i;

t := x[5];
x[5] := x[nmin];
x[nmin] := t;
//...

Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.