![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Я не могу понять,как находится самый мелкий элемент.Там же написано min:=i и все.Как определяется ,что этот элемент минимален ?
Код:
program sortar;
const
size=5;
var
a: array[1..size] of integer;
i:integer; {номер элемента, от которого ведётся поиск},
{минимального элемента}
min:integer; {номер минимального элемента в части}
j:integer; {номер эл-та, сравниваемого с минимальным}
buf:integer; {буфер, используемый при обмене эл-ов массива}
k:integer;
begin
writeln('Сортировка массива.');
write('Введите', size:3,' целых в одной строке');
writeln('через пробел и нажмите Enter');
for k:=1 to size do read(a[k]);
writeln('Сортировка');
for i:=1 to size-1 do
begin
{поиск минимального эл-та в части массива от a[i] до a[size]}
min:=i;
for j:=i+1 to size do begin
if a[j]<a[min] then min:=j;
{поменяем местами a[min] и a[i]}
buf:=a[i];
a[i]:=a[min];
a[min]:=buf;
{Выведем массив}
for k:=1 to size do write(a[k],' ');
writeln;
end;
end;
writeln('Массив отсортирован. ');
end. |
|
#2
|
||||
|
||||
|
тут min - индекс минимального элемента. Его мы ищем. Надо какое-то начальное значение задать. Вот мы и задаем - I, т.е. первый элемент в несортированной части массива. Потом пробегаемся по этой части и ищем минимальный.
|