С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.74/160: Рейтинг темы: голосов - 160, средняя оценка - 4.74
0 / 0 / 0
Регистрация: 18.05.2010
Сообщений: 11
1

Сортировка массивов. Сортировка выбором

03.06.2010, 12:51. Показов 32602. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста, я что-то совсем запуталась при составлении данной программы...
Сортировка выбором.
Дана последовательность чисел а1, а2, …, аn. Требуется переставить элементы так, чтобы они были расположены по убыванию. Для этого в массиве, начиная с первого, выбирается наибольший элемент и ставится на первое место, а первый – на место наибольшего. Затем, начиная со второго, эта процедура повторяется. Написать алгоритм сортировки выбором.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.06.2010, 12:51
Ответы с готовыми решениями:

Сортировка выбором
Скажите как написать сортировку выбора, чтобы были swap , less? пишу на лазарусе. var a:...

Сортировка выбором
ПОМОГИТЕ,ПОЖАЛУЙСТА!!!! Сортировка выбором!!!!

Сортировка выбором
Помогите пожалуйста, в задаче надо вывести минимальное число из данных четырёх. Как сделать так,...

Сортировка выбором
Сортируем массив так:найти мин элемент,который копируем в первую ячейку другого массива,и снова...

7
212 / 105 / 34
Регистрация: 17.10.2009
Сообщений: 174
03.06.2010, 12:57 2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Program sort;                         { Сортировка выбором }
  const n = 20;
  var a : array [1 .. n] of integer;    
        i, j, nmax, buf : integer;
begin    
  writeln('Введите ', n, ' элементов массива');    
  for i := 1 to n do read(a[i]);   
  for i := 1 to n - 1 do begin      { просмотр массива n-1 раз }        
      nmax := i;        
      for j := i + 1 to n do            { поиск максимума }            
         if a[j] > a[nmax] then nmax := j;            
      buf := a[i];                  { перестановка }            
      a[i]:= a[nmax];             { двух }            
      a[nmax]:= buf;            { элементов массива }        
  end;        
  writeln('Упорядоченный массив:');        
  for i := 1 to n do write(a[i]:5)
  readln;
end.
2
6 / 6 / 5
Регистрация: 16.04.2010
Сообщений: 248
Записей в блоге: 1
03.06.2010, 13:01 3
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
uses crt;
var a:array[1..100] of integer;
n,i,k,x,y:integer;
begin
writeln('Введите размерность массива');
readln(n);
for i:=1 to n do
begin
a[i]:=random(100)-50;
write(a[i],'');
end;
begin
for i:=1 to n-1 do begin
k:=1;
x:=a[i];
for j=i+1 to n do
if a[j]<x then begin
k:=j;
x:=a[k];
a[i]:=x;
end;
end;
writeln;
write('Отсортированный массив');
writeln;
for i:=1 to n 
begin
write(a[i],'');
end;
end.
Кажется так. исправляй ошибки.
2
773 / 578 / 324
Регистрация: 17.06.2009
Сообщений: 1,188
03.06.2010, 13:14 4
schanker, мы вводим не размерность массива, а размер; это совершенно разные вещи. См. раздел важно.

Добавлено через 1 минуту
Безымянная, очень много видов сортировок представлено в этом разделе.
0
6 / 6 / 5
Регистрация: 16.04.2010
Сообщений: 248
Записей в блоге: 1
03.06.2010, 13:16 5
STGE, какая разница. От этих слов прога все равно будет работать. Хоть вместо этих слов вводи что в голову взбредет. главное, чтобы ты знал лдля чего это. Да и для красоты в общем то
0
636 / 219 / 64
Регистрация: 03.11.2009
Сообщений: 488
03.06.2010, 13:17 6
Вот сортировка выбором
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
var
a: array [1..20] of integer;
i,j,nmin,n,c:integer;
 
begin
  writeln('Введите размер');
  readln(n);
    writeln('Исходный массив');
   for i:=1 to n do
     begin
       a[i]:=random(100)-20;
       write(a[i]:4);
     end;
      writeln;
   for i:=1 to n-1 do begin
      nmin:=i;
     for j:=i+1 to n do
        if a[j] < a[nmin] then begin
          nmin:=j; c:=a[i]; a[i]:=a[nmin]; a[nmin]:=c;
        end;
   end;
     writeln('Отсортированный массив');
    for i:=1 to n do
      write(a[i]:4);
end.
1
6 / 6 / 5
Регистрация: 16.04.2010
Сообщений: 248
Записей в блоге: 1
03.06.2010, 13:18 7
Вау. булевский тип подключили. Так...ещё у кого какой вариант?
0
636 / 219 / 64
Регистрация: 03.11.2009
Сообщений: 488
03.06.2010, 13:21 8
schanker, буленовский тип остался от другой сортировки и здесь он не нужен
0
03.06.2010, 13:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.06.2010, 13:21
Помогаю со студенческими работами здесь

Сортировка выбором
Написать программу которая методом выбора сортируют по убыванию введений з клавиатури одномерний...

Сортировка выбором
Сортировка выбором. Дана последовательность чисел а1, а2, ..., аn. Требуется переставить элементы...

Сортировка выбором.
Дана последовательность чисел а1,а2,...an. Требуется переставить элементы так чтобы они были...

Сортировка выбором
Отсортировать каждый столбец матрицы с четным номером по невозрастанию, а с нечетным - по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru