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

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

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

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2010, 00:30   #1
Danara
Пользователь
 
Регистрация: 30.03.2010
Сообщений: 12
По умолчанию Delphi Массив - смещение на позицию

Здравствуйте, хотелось бы узнать, с помощью какого кода можно передвинуть массив на одну позицию. Пример массив в dbgrid:

1 4 6 7 8 9 должен стать 9 1 4 6 7 8
Danara вне форума Ответить с цитированием
Старый 14.05.2010, 08:13   #2
Chudo4258
Форумчанин
 
Аватар для Chudo4258
 
Регистрация: 19.02.2009
Сообщений: 622
По умолчанию

Код:
k:=a[n];
for i:=n-1 downto 1 do
 a[i]:=a[i+1];
a[1]:=k;
Жми на весы!!!
Chudo4258 вне форума Ответить с цитированием
Старый 14.05.2010, 08:22   #3
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Немного не так... Смещение нужно делать "вправо", судя по примеру ТС.
Перемешивай дело с бездельем и не сойдешь с ума...

Последний раз редактировалось Grag; 14.05.2010 в 08:24.
Grag вне форума Ответить с цитированием
Старый 14.05.2010, 08:30   #4
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Копировать массивы можно используя например функцию move.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 14.05.2010, 09:51   #5
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Цитата:
Сообщение от Chudo4258 Посмотреть сообщение
Код:
k:=a[n];
for i:=n-1 downto 1 do
 a[i]:=a[i+1];
a[1]:=k;
Проверено... Заключение - код работает НЕВЕРНО!
Перемешивай дело с бездельем и не сойдешь с ума...
Grag вне форума Ответить с цитированием
Старый 14.05.2010, 10:32   #6
Chudo4258
Форумчанин
 
Аватар для Chudo4258
 
Регистрация: 19.02.2009
Сообщений: 622
По умолчанию

ну немного спутал.
вот теперь правильно.
Код:
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils;
var a: array [1..10]of integer;
    i,n,k:integer;
begin
  { TODO -oUser -cConsole Main : Insert code here }
write('n='); readln(n);
for i:=1 to n do
 begin
  write('A[',i,']= '); readln(a[i]);
 end;

k:=a[n];
for i:=n downto 2 do
 a[i]:=a[i-1];
a[1]:=k;

for i:=1 to n do
 write(a[i]:5);
readln
end.
14.05.jpg
Жми на весы!!!
Chudo4258 вне форума Ответить с цитированием
Старый 24.05.2010, 17:15   #7
Danara
Пользователь
 
Регистрация: 30.03.2010
Сообщений: 12
По умолчанию

СПАСИБО БОЛЬШОЕ =*
Danara вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Смещение рисунка skrudjmagdak Общие вопросы Delphi 5 27.03.2010 15:23
Смещение компонента Volt Общие вопросы Delphi 9 20.01.2010 00:36
Смещение ячеек Zulius Microsoft Office Excel 3 26.11.2009 12:30
Delphi 7 вставка текста в Richedit в позицию курсора newbee-dust Помощь студентам 3 10.06.2009 12:58
Смещение в WinHex bmw Софт 4 22.03.2009 02:16