Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/10: Рейтинг темы: голосов - 10, средняя оценка - 5.00
Millet
1 / 1 / 1
Регистрация: 10.12.2011
Сообщений: 25
1

Упорядочить массив по возрастанию

08.11.2012, 22:14. Просмотров 1942. Ответов 4
Метки нет (Все метки)

Задание: создать одномерный массив из целых рандомных чисел, упорядочить числа по возрастанию.

В чем проблема :?

Вот, что я наделал:
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
31
32
33
program vozrastanie;
 
const
  n=10;
 
var
  x:array[1..n] of integer;
  i,t:integer;
  
begin
writeln;
writeln('nachalnii massiv:');
 
for i:=1 to n do
  begin
    x[i]:=random(n)+1;
    write(x[i],' ');
  end;
 
writeln; writeln;
writeln('massiv posle 1oi perestanovki:');
i:=1;
 
if x[i]>x[i+1] then
  for i:=1 to n-1 do
    begin
      x[1]:=x[i];
      x[i]:=x[i+1];
      x[i+1]:=x[1];
      write(x[i],' ');
    end;
 
end.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.11.2012, 22:14
Ответы с готовыми решениями:

Дан одномерный массив а1,а2,...,аn.Упорядочить данный массив по возрастанию,используя алгоритм сортировки обменами 2.
Помогите пожалуйста!!!Дан одномерный массив а1,а2,...,аn.Упорядочить данный...

Упорядочить массив по возрастанию
упорядочить массив по возрастанию procedure TForm1.Button1Click(Sender:...

Упорядочить массив размера N по возрастанию
Упорядочить массив размера N по возрастанию.

Упорядочить массив по возрастанию элементов 3-го столбца.
дан двумерный массив, содержащий 4 строки и 5 столбцов. Элементами массива...

Упорядочить по возрастанию массив действительных чисел
упорядочить по возрастанию массив действительных чисел а1,..,аN, используя...

4
Mawrat
12833 / 5741 / 1700
Регистрация: 19.09.2009
Сообщений: 8,807
08.11.2012, 22:26 2
Надо исправить эту часть:
Pascal
1
2
3
4
5
6
7
8
9
10
if x[i]>x[i+1] then
  for i:=1 to n-1 do
    begin
      x[1]:=x[i];
      x[i]:=x[i+1];
      x[i+1]:=x[1];
      write(x[i],' ');
    end;
 
end.
Код надо изменить таким образом:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
const
  n=10;
var
  x:array[1..n] of integer;
  i, j, t : integer;
begin
...
  //Сортировка.
  for i := 1 to n-1 do
  for j := i + 1 to n do
    if x[i] > x[j] then begin
      t := x[i];
      x[i] := x[j];
      x[j] := t;
    end;
  
  Writeln('Massiv posle sortirovki:');
  for i := 1 to n do Write(x[i], ' ');
  Readln;
end.
1
mss
2634 / 2258 / 276
Регистрация: 24.12.2010
Сообщений: 13,725
08.11.2012, 22:29 3
> massiv posle 1oi perestanovki:

а где после второй ? после третьей ? после столохматой ?
0
Игорь[Igor]
716 / 469 / 128
Регистрация: 24.12.2008
Сообщений: 3,914
08.11.2012, 22:30 4
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var
  i, j, m_i: integer;
  min: integer;
...
  for j:=0 to n-1 do
  begin
    min:=x[j];
    m_i:=j;
    for i:=j+1 to n do
    if x[i]<min then
    begin
      min:=x[i];
      m_i:=i;
    end;
    x[m_i]:=x[j];
    x[j]:=min;
  end;
1
Millet
1 / 1 / 1
Регистрация: 10.12.2011
Сообщений: 25
08.11.2012, 22:30  [ТС] 5
Спасибо большое.

Видел такое решение в инете, понял его, но не понял почему не работает моё.

В любом случае сейчас разбираться буду)
0
08.11.2012, 22:30
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.11.2012, 22:30

Упорядочить массив по возрастанию элементов первого столбца
Дан массив целых чисел Am*n . Упорядочить массив по возрастанию элементов...

Упорядочить по возрастанию массив, содержащий 15 вещественных чисел
Как это сделать?

Упорядочить массив K по возрастанию, переставив соотвествующие фрагменты в массиве X
Целочисленный массив X из n элементов разбит на m фрагментов. В целочисленном...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru