Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.02;
Скачать: CL | DM;

Вниз

Сдвиг элементов массива.   Найти похожие ветки 

 
Layner ©   (2004-04-16 13:31) [0]

Есть массивиз n значений, например 2,5,6,1,1,6,6 .. необходимо сдвинуть все значения массива, на одно значение влево(или право, без разницы), последнее значение стереть, а на освобождаемое место встает новое значение..
Делаю так: (одномерный массив, 63 значения, первоначально все нули)

procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
s: string;
....
begin

for i:=1 to 63 do
   mass[0,i]:=mass[0,i-1]; //сдвинули на 1 элемент
mass[0,0]:=Random(99);  //сгенерили новый эл. массива в 1й ячейке

//и посмотрю в memo что же у нас получилось
 for i:=0 to 63 do
  s:=s+ IntToStr(mass[i]);
 memo1.Lines.Add(s);

... Что то не то :(


 
Владислав ©   (2004-04-16 13:35) [1]

Да все не так.

Вот тут:
mass[0,i]:=mass[0,i-1];
ты перетер старший элемент массива.


 
Layner ©   (2004-04-16 13:44) [2]

Владислав, спасибо, все правилино делал, только цикл не правильно организовал, так получилось:
 for i:=62 downto 1 do
   mass[i]:=mass[i-1];


Ещё в 1м коде ошибка, случайно не убрал 2х мерный массив... а спрашивал про одномерный.


 
Владислав ©   (2004-04-16 13:48) [3]

> Layner ©   (16.04.04 13:44) [2]

Ну дык надо либо конкретный вопрос задавать, либо общими темами интересоваться в "Потрепаться" ;)

Удачи.



Страницы: 1 вся ветка

Текущий архив: 2004.05.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.069 c
8-1075293011
АСМиД
2004-01-28 15:30
2004.05.02
Как найти DirectX


8-1075581536
dementiy04
2004-01-31 23:38
2004.05.02
ACDSee своими руками


4-1079030059
BaDeVlad
2004-03-11 21:34
2004.05.02
Как сделать многоуровневую отмену в Richedit?


3-1080808013
Goida
2004-04-01 12:26
2004.05.02
Моя программа не хочет работать на другом компьютере.


11-1065696703
Aser
2003-10-09 14:51
2004.05.02
Кириллица в sqlitecc