На главную Самоучитель pascal Форум программистов онлайн Решение задач pascal Задачи pascal Поиск
16 Июл 13

Сортировка массива в паскале


Комментарии :  0        Просмотры :  4125


В данной статье мы разберем то , как делать сортировку внутри массива. Делать его нарастающим или убывающим.

Например сделать из массива A = [ 13 ; -5 ; 4 ; 11 ; 0 ] такой массив : A = [ -5 ; 0 ; 4 ; 11 ; 13 ] и т.п.

Условие задачи : Требуется заполнить массив 10 целыми числами ( случайно ) от -10 до 10 и вывести его на экран. После чего изменить его таким образом , чтобы числа находились в нем в порядке возрастания. Вывести исходный массив на экран.

Решение задачи :

program mypascal;
uses crt;
var
a: array[1..10] of integer;
i,i1,c:integer;
begin

randomize;

for i:= 1 to 10 do
begin
a[i]:= random(21)-10;
write(a[i],' ');
end;

writeln(' ');

for i:= 1 to 9 do
for i1:= i+1 to 10 do
if ( a[i1] < a[i] ) then
begin
c:= a[i];
a[i]:= a[i1];
a[i1]:= c;
end;

for i:= 1 to 10 do
write(a[i],' ');

end.

Разбор задачи :

В начале программы заполняем массив 10 случайными числами от -10 до 10. В этом же цикле выводим массив на экран.

Далее идут 2 цикла вложенных друг в друга. Для того , чтобы отсортировать последовательность чисел :

Первый цикл берет одно число , а второй сравнивает его с остальными числами.

Первое число сравнивается со 2,3,4,5... числом. Второе число с 3,4,5... пока предпоследнее число в последовательности не будет сравниваться с последним.

Сравнение происходит так : если одно число меньше другого , то обмениваем их. Подробнее про обмен тут
Рейтинг материала : ( 4 / 9 )
Сообщить об ошибке
Комментарии :  0        Просмотры :  4125

Поиск

Решение задач

Если вас интересует решение какой-либо задачи , то вы можете опубликовать
её условие на нашем сайте или форуме. И в скором времени другие пользователи помогут вам.

Опубликовать на сайте

Опубликовать на форуме

Опрос

Какую разновидность паскаля вы предпочитаете ?