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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.02.2012, 03:20   #1
AngryD
Новичок
Джуниор
 
Регистрация: 24.02.2012
Сообщений: 1
По умолчанию Tlist

моё задание таково:
Описать тип-объект Spisok (однонаправленный линейный список без головного элемента, элемент содержит поля: ключ, информационное поле 1, информационное поле 2) и его методы: создание пустого списка; создание элемента; добавление элемента в список – в начало и в конец; удаление элемента списка – из начала и из конца; уничтожение списка с освобождением памяти; подсчет количества элементов списка; вывод списка на экран в виде таблицы; сохранение списка в файле; восстановление списка из файла. Описать тип и методы его потомка Spis2 (методы: поменять местами два элемента с заданными ключами; удалить элементы, значение ключа которых больше среднего арифметического всех ключей; исключить i-ый по номеру элемент).

В принципе я понимаю как работают списки, но нигде не могу найти точного кода реализации. Как точно описать список и как вывести его в виде таблицы?
Прошу посильной помощи, спасибо.
AngryD вне форума Ответить с цитированием
Старый 24.02.2012, 03:41   #2
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Цитата:
...но нигде не могу найти точного кода реализации. Как точно описать список...?
Ответ в заголовке темы.
Можно сделать потомка от TList, чтобы объявить требуемые по заданию поля.
Вся, нужная по заданию, функциональность у TList есть.
Таблица - TStringGrid.

Или сделать как в примере по справке TList в Delphi. Там же показано как выводить содержимое TList в виде упорядоченных данных на канву (TCanvas).

Последний раз редактировалось Прик; 24.02.2012 в 03:47.
Прик вне форума Ответить с цитированием
Старый 24.02.2012, 12:22   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Для раздумий:
Код:
program Project1;

{$APPTYPE CONSOLE}

uses   classes,
  SysUtils;
type
 r=record
  i:integer;
  d:TDateTime;
 end;
var l:TList;ar:^r;i:integer;
begin
// Создаем список
 l:=TList.Create;
  for i:=1 to 10 do begin
// Наполняем его чем-то
    new(ar);l.Add(ar);
    ar^.i:=i;ar^.d:=now;
  end;
  for i:=0 to l.Count-1 do begin
// Выбираем из списка. Начало списка идет с 0
   ar:=l[i];
   writeln(ar^.i,ar^.d);
  end;
 l.Free;
 readln;
  { TODO -oUser -cConsole Main : Insert code here }
end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
delphi TList world12_tk Помощь студентам 3 14.04.2011 18:02
TList->Sort ongleb Общие вопросы C/C++ 0 12.03.2010 14:58
Подкорректирова tList Altera Общие вопросы Delphi 2 11.09.2009 20:24
Сортировка TList prikolist Общие вопросы C/C++ 0 27.04.2009 21:48
Tlist - Сортировка MAcK Компоненты Delphi 1 03.09.2007 15:24