Логин:     Забыли пароль?
 
Пароль:   Регистрация

Форум / Программирование - Удаление повторяющихся элементов из динамического списка  

Удаление повторяющихся элементов из динамического списка

julia-julia
julia-julia
Посетитель
Сообщения: 11
[Сообщение #1] 17 июня 2011, 20:42
Не могу найти ошибку. Нужно из списка удалить повторяющиеся элементы
type
TPSlovo=^TSlovo; //Указатель на тип слово
TSlovo=record
Slovo:string[20];//слово
next:TPSlovo;//следующий элемент списка
pred:TPSlovo;//Предыдущий элемент списка
end;
var
head: TPSlovo;//Начало (голова) списка

//Удаление повторов
procedure TForm1.Button2Click(Sender: TObject);
var node: TPSlovo; //новый узел
curr: TPSlovo;//текущий узел
pred: TPSlovo; //предыдущий относительно curr узел
next: TPSlovo;//следующий щтносительно curr узел
n:integer; // длина (количество элементов) списка
st: string; //строка представление списка
begin
curr^.Slovo:=Edit1.Text; //фамилия

//Если элементы повторяются, то оставить один из них
if Curr^.next=Curr^.pred then
begin
// Удаление из списка
curr:=next;
next:=curr^.next;
Dispose(next);
//отчистить поля ввода
Edit1.Text:='';
end;
//вывести список в Label3
n:=0;
st:='';
curr:=head; //указатель на первый элемент списка
while curr<>NIl do
begin
n:=n+11;
st:=st+curr^.Slovo+#13;
curr:=curr^.pred;// указатель на следующий элемент
end;
if n<>0 then Label3.Caption:='Список после удаления повторов'+#13+st
else ShowMessage('В списке нет элементовю');

end;

min@y™
min@y™
Доктор наук
Сообщения: 400
[Сообщение #2] 17 июня 2011, 20:53
Это лаба?

Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
julia-julia
julia-julia
Посетитель
Сообщения: 11
[Сообщение #3] 17 июня 2011, 20:59
Ну, типо да:)

min@y™
min@y™
Доктор наук
Сообщения: 400
[Сообщение #4] 17 июня 2011, 21:03

Цитата (julia-julia):

Ну, типо да:)

Тогда какого хрена она на форуме делает?

Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
julia-julia
julia-julia
Посетитель
Сообщения: 11
[Сообщение #5] 17 июня 2011, 21:13
На самом деле это одно из заданий из курсовой. Я не знаю где ошибка, может поможете хотя бы объясните:)

min@y™
min@y™
Доктор наук
Сообщения: 400
[Сообщение #6] 17 июня 2011, 21:16
Какой смысл городить свои списки, когда есть стандартные?
Твой кривой исходник я не буду читать, нервы дороже. Могу насписать с нуля. За пиво.

Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
min@y™
min@y™
Доктор наук
Сообщения: 400
[Сообщение #7] 17 июня 2011, 21:19
Да, и ещё... Ненавижу, когда мой родной русский язык пишут транслитом! Это просто дикий беспредел. Не делай так больше.

Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!

Всего сообщений: 7 (сейчас показаны: с 1 по 7)

Перейти в раздел:


 © 2004 - 2017, Delphi.int.ru
Версия форума: 1.10 (19.01.2010)
RSS Delphi.int.ru Expert Код
Выполнено за 0.04 сек.
Обратная связь  
Рейтинг@Mail.ru Majordomo.ru - надёжный хостинг