Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме 85 тыс рублей в месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.10.2019, 14:55   #1
ALINA787
 
Регистрация: 24.10.2019
Сообщений: 9
По умолчанию [Delphi] в массиве поменять порядок следования столбцов на обратный (первый столбец становится последним, второй предпоследним и т.д.).

• в массиве поменять порядок следования столбцов на обратный (первый столбец становится последним, второй предпоследним и т.д.).
Код:
procedure TForm1.BitBtn3Click(Sender: TObject);
begin
SetLength(mas,n,m);
   StringGrid2.ColCount:=m+1;
   StringGrid2.RowCount:=n+1;
   for i := 1 to stringgrid2.ColCount do stringgrid2.Cells[i,0]:=inttostr(i);
   for i := 1 to stringgrid2.rowcount do stringgrid2.Cells[0,i]:=inttostr(i);
   begin
for j:=m downto 0 do
for i := 0 to n do
 begin
 mas[i,j]:=mas[i,m-j+1];
StringGrid2.Cells[j+1,i+1]:=inttostr(mas[i,j]);
end;
   end;
пока у меня лишь такие мысли , но не получается почему-то хотя когда я сама прогнала на листочке все это то работает, а тут нет
ALINA787 вне форума Ответить с цитированием
Старый 28.10.2019, 14:57   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,258
По умолчанию

Код:
mas[i,j]:=mas[i,m-j+1];
А старое значение mas[i,j] вы в уме храните? Так почему же не записываете взад?
p51x вне форума Ответить с цитированием
Старый 28.10.2019, 15:00   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

то старое значение в mas для начала еще поместить нужно
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 28.10.2019, 16:16   #4
ALINA787
 
Регистрация: 24.10.2019
Сообщений: 9
По умолчанию

я и хранила тоже, но программа тогда вообще выключается и результата не давало
ALINA787 вне форума Ответить с цитированием
Старый 28.10.2019, 16:30   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от ALINA787 Посмотреть сообщение
SetLength(mas,n,m);
эту строчку убрать ОБЯЗАТЕЛЬНО!


Цитата:
Сообщение от ALINA787 Посмотреть сообщение
Код:
mas[i,j]:=mas[i,m-j+1];
местами элементы меняются не так.

а вот так:
Код:
t:=mas[i,j];
mas[i,j] := mas[i,m-j+1]
mas[i,m-j+1] := t;
Serge_Bliznykov вне форума Ответить с цитированием