Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 23.11.2010, 14:23
whizzkey whizzkey вне форума
Прохожий
 
Регистрация: 16.10.2010
Сообщения: 35
Репутация: 10
По умолчанию Удаление элемениа из динамического массива

уважаемые форумчане, подскажите пожалуйста что я делаю не так - суть вот в чем у меня есть двумерный массив в котором храню номер вопроса и номер правильного ответа

Код:
An:array[1..NQ,1..NA] of String[100];
где nq - ограничение на макс 
количество вопросов(100) и 
na - макс число ответов(3)

Мне нужно организовать удаление текущего вопроса (равного переменной n) со сдвигом остальных на -1 позицию
Для этого я создаю динамический массив

Код:
c: array of String;

в который пишутся все эелементы кроме n следущей процедурой

Код:
SetLength(c, 0);
  For i:=1 to 100 do
    If i <> n then
      begin
        SetLength(c, Length(c)+1);
        b[Length(c)-1]:=Test.An[i];
      end;
  For i:=1 to 100 do Test.An[i]:='';
  For i:=0 to Length(c)-1 do Test.An[i+1]:=c[i];

На что делфи мне пишет incompatible types, хотя ПУЛЯ В ПУЛЮ аналогичная процедура по удалению заголовка вопроса идет на ура(но там массив одномерный QW:array[1..NQ] of String)

З.Ы. Test - переменная типа record

Последний раз редактировалось whizzkey, 23.11.2010 в 14:28.
Ответить с цитированием
  #2  
Старый 23.11.2010, 19:00
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Проще было бы так:
Код:
for i:=n to Count do
 Test.An[i]:=Test.An[i+1];
Dec(count);
Count - длина массива.
__________________
jmp $ ; Happy End!
The Cake Is A Lie.

Последний раз редактировалось Bargest, 23.11.2010 в 19:04.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:38.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025