Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
2 / 2 / 1
Регистрация: 16.12.2012
Сообщений: 64
1

Метод пузырька

14.12.2013, 19:43. Показов 728. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет! При сортировке в программе выдает ошибку, во втором процедуре
Delphi
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
34
procedure TForm1.Button1Click(Sender: TObject);
begin
setlength(a,n,m);
n:=strtoint(edit1.Text);
m:=strtoint(edit2.Text);
setlength(a,n,m);
sg1.ColCount:=m;
sg1.RowCount:=n;
sg2.ColCount:=m;
sg2.RowCount:=n;
randomize;
  for i:=0 to n-1 do begin
    for j:=0 to m-1 do begin
      a[i,j]:=random(21)-10;
      sg1.Cells[j,i]:=inttostr(a[i,j]);
    end;
  end;
end;
 
procedure TForm1.Button2Click(Sender: TObject);
begin
  for i:=1 to n do
    for j:=1 to n do
   [B] if a[i,j]>a[i,j+1] then begin[/B] //вот здесь ошибка
      buf:=a[i,j];
          a[i,j]:=a[i,j+1];
          a[i,j+1]:=buf;
    end;
    for i:=0 to n-1 do begin
    for j:=0 to m-1 do begin
      sg2.Cells[j,i]:=inttostr(a[i,j]);
    end;
  end;
end;
я не могу понять из-за чего ошибка!!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.12.2013, 19:43
Ответы с готовыми решениями:

Метод пузырька
Вариант 1 - Разработать программу сортировки одномерного массива «Методом пузырька» в порядке...

Задача на метод пузырька.
Значения переменных a, b и с поменять местами так, чтобы оказалось a<=b<=c. помогите эту задачу...

Метод пузырька построчно
Задача: расставить элементы матрицы по возрастанию построчно методом пузырька. Спасибо!...

Метод пузырька(пересоздал)
Запрашивать размерность двумерного массива. Затем организовать заполнение двумерного массива целыми...

3
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
14.12.2013, 19:48 2
Индексация динамических массивов начинается с 0 и заканчивается "число эл-тов - 1".
1
561 / 484 / 168
Регистрация: 14.02.2012
Сообщений: 1,561
14.12.2013, 19:50 3
Цитата Сообщение от serik8989 Посмотреть сообщение
я не могу понять из-за чего ошибка!!
Если j = n, то при обращении a[i, j+1] произойдет выход за границы массива. Количество проходов второго цикла уменьшить на 1.
1
2 / 2 / 1
Регистрация: 16.12.2012
Сообщений: 64
14.12.2013, 20:26  [ТС] 4
Тему можно закрывать
0
14.12.2013, 20:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.12.2013, 20:26
Помогаю со студенческими работами здесь

Метод Пузырька в графичеком виде
Нужно создать самую простую программу на Делфи, которая бы реализовывала метод Пузырька и ответ...

Сортировка обмена(метод пузырька)
Ребят, помогите, нашел в просторах код, вроде форму задаю правильно, но программа не хочет...

Сортировка метод пузырька, пропадает строка
Здравствуйте. Сортирую свой список в stringrid используя метод пузырька, но при выполнение...

Задача на алгоритм сортировки обменами (метод пузырька)
Напишите улучшенную программу сортировки обменами. Напомним алгоритм сортировки обменами (метод...


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

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