![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Пользователь
Регистрация: 22.06.2008
Сообщений: 13
|
![]()
2maladoy Спасибо попробую!
|
![]() |
![]() |
![]() |
#12 |
Форумчанин
Регистрация: 06.12.2008
Сообщений: 613
|
![]()
так а я тебе на чем на писал
![]() ![]() |
![]() |
![]() |
![]() |
#13 |
Пользователь
Регистрация: 22.06.2008
Сообщений: 13
|
![]()
Ну! Да в Форме!
![]() |
![]() |
![]() |
![]() |
#14 |
Пользователь
Регистрация: 22.06.2008
Сообщений: 13
|
![]()
procedure TForm1.Button1Click(Sender: TObject);
const SIZE = 10; var b: array[1..SIZE] of byte; a: array[1..SIZE] of integer; min: integer; j: integer; buf: integer; i, k: integer; begin for i := 1 to SIZE do b[i]:= Edit1.Text; b[i]:=ord(a[i]); begin for i := 1 to SIZE - 1 do min := i; for j := i + 1 to SIZE do if a[j] < a[min] then min := j; buf := a[i]; a[i] := a[min]; a[min] := buf; begin for i:=1 to size do a[i]:=chr(b[i]); for k := 1 to SIZE do Label2.caption := label2.caption + ' ' + IntTostr(a[k]); Label2.caption := label2.caption + #13; end; Label2.caption := label2.caption + #13 + 'MaccMB отсортирован.'; end; end. Вот что то с ходу с ошибками( конечно) накидал- но похоже что не так Последний раз редактировалось Onza; 25.01.2009 в 00:33. Причина: ошибки |
![]() |
![]() |
![]() |
#15 |
Пользователь
Регистрация: 22.06.2008
Сообщений: 13
|
![]()
procedure TForm1.Button1Click(Sender: TObject);
const SIZE = 10; var b: array[1..SIZE] of byte; a: array[1..SIZE] of integer; min: integer; { номер минимального элемента в части массива от i до верхней границы массива } j: integer; { номер элемента, сравниваемого с минимальным } buf: integer; { буфер, используемый при обмене элементов массива } i, k: integer; begin // ввод массива for i := 1 to SIZE do b[i]:= StrToInt(StringGrid1.Cells[i - 1, 0]); label2.caption := ''; b[i]:=ord(a[i]); begin for i := 1 to SIZE - 1 do { поиск минимального элемента в части массива от а[1] до a[SIZE]} min := i; for j := i + 1 to SIZE do if a[j] < a[min] then min := j; { поменяем местами a [min] и a[i] } buf := a[i]; a[i] := a[min]; a[min] := buf; begin for i:=1 to size do a[i]:=chr(b[i]); { вывод массива } for k := 1 to SIZE do Label2.caption := label2.caption + ' ' + IntTostr(a[k]); Label2.caption := label2.caption + #13; end; Label2.caption := label2.caption + #13 + 'Maccив отсортирован.'; end; end. Короче ругается на строку ![]() a[i]:=chr(b[i]); |
![]() |
![]() |
![]() |
#16 |
Форумчанин
Регистрация: 06.12.2008
Сообщений: 613
|
![]()
потому что a[i] - это integer, а chr(b[i]) - это char - числу символ не присвоишь к счастью
![]() |
![]() |
![]() |
![]() |
#17 |
Пользователь
Регистрация: 22.06.2008
Сообщений: 13
|
![]()
Так я ж в этой строке вроде перевожу число в символ?
|
![]() |
![]() |
![]() |
#18 | ||
Форумчанин
Регистрация: 06.12.2008
Сообщений: 613
|
![]() Цитата:
Цитата:
|
||
![]() |
![]() |
![]() |
#19 |
Пользователь
Регистрация: 22.06.2008
Сообщений: 13
|
![]()
Ну я значит не догоняю!!!!
![]() а как мне перевести буквы в числовое значение -прокрутить циклы и вернуть снова буквы и вывести их на Label2 |
![]() |
![]() |
![]() |
#20 |
Пользователь
Регистрация: 22.06.2008
Сообщений: 13
|
![]()
Я ввожу в Edit поле - d c a b
я же не могу ими манипулировать в циклах с массивами поэтому что бы отсортировать их мне надо сначало их перевести в цифровое значение, а потом вернуть в буквы и вывести на форму... Или всё в корне неверно? Последний раз редактировалось Onza; 25.01.2009 в 11:39. Причина: редактирование |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
BDE + сортировка на дельфи | pnv152 | Помощь студентам | 4 | 21.01.2009 15:31 |
Помогите - Сортировка методом пузырька Delphi | #Nii | Помощь студентам | 5 | 21.12.2008 14:53 |
сортировка методом двухпроходного пузырька. | Net* | Общие вопросы C/C++ | 3 | 26.05.2008 07:17 |