|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
Упорядочить элементы главной диагонали в порядке убывания
Код:
procedure TForm1.Button1Click(Sender: TObject); var mas:array [1..4,1..4] of integer; mas2:array [1..4] of integer; i,j,buf,min,imin:integer; begin for i:=1 to 4 do for j:=1 to 4 do mas[i,j]:=StrToInt(StringGrid1.Cells[j-1,i-1]); for i:=1 to 4 do mas2[i]:=mas[i,i]; for i:=1 to 4 do begin min:=mas2[i]; for j:=1 to 4 do if (mas2[j]>min) then begin min:=mas2[j]; imin:=j; end; buf:=mas2[i]; mas2[i]:=mas2[imin]; mas2[imin]:=buf; end; for i:=1 to 4 do for j:=1 to 4 do begin if(i=j)then StringGrid2.Cells[j-1,i-1]:=IntToStr(mas2[i]) else StringGrid2.Cells[j-1,i-1]:=IntToStr(mas2[i,j]); end; end; end. lmikle: пользуемся тегами!!! ошибка else StringGrid2.Cells[j-1,i-1]:=IntToStr(mas2[i,j]); типа "array type required" помогите, если сможете) Последний раз редактировалось lmikle, 15.04.2013 в 20:43. |
#2
|
||||
|
||||
Цитата:
jmp $ ; Happy End! The Cake Is A Lie. |
#3
|
|||
|
|||
помог) опечатка i там одно.
|
#4
|
|||
|
|||
у тебя в этой строке не тот массив. нужен mas, который двухмерный.
ЗЫ. Обысная проблема копи-паста. Скопировал, а поменять забыл. |
#5
|
|||
|
|||
тогда пишет, что типы не совпадают.
|
#6
|
|||
|
|||
Цитата:
Блин, строка должна быть: else StringGrid2.Cells[j-1,i-1]:=IntToStr(mas[i,j]); |
#7
|
|||
|
|||
тогда array type required.
|
#8
|
||||
|
||||
Ты бы внимательней ответы читал, иначе толку помогать... Или переменные называл СИЛЬНО РАЗНЫМИ именами.
jmp $ ; Happy End! The Cake Is A Lie. |
#9
|
|||
|
|||
Цитата:
я написал, что будет, если написать так, как вы мне говорите. |
#10
|
|||
|
|||
Цитата:
Не напрягает что в одной строке mas2[i], а в другой mas2[i,j]? |
#11
|
||||
|
||||
Цитата:
Цитата:
Цитата:
jmp $ ; Happy End! The Cake Is A Lie. |