IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Такой вопрос. Впервый раз добавление записи в список проходит нормально, а когда начинаешь добавлять запись в список 2 раз, то список портиться.
alex457
сообщение 21.04.2012 18:53
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 15
Пол: Мужской
Реальное имя: alex

Репутация: -  0  +


Такой вопрос. Впервый раз добавление записи в список проходит нормально, а когда начинаешь добавлять запись в список 2 раз, то список портиться. Помогите плиз.
 
program ttts;
uses crt;
Type Symbol = record
Surname: String;
Name: String;
{ Fullname: String;
Bhirtday: String;
Pol: String;
Identity: String;
DateCreate: String;
DateEnd: String;
Adres: String;}
end;
type Item = ^Pointer;
Pointer = record
key: integer;
str: Symbol;
Next: Item;
end;
var f: file of Symbol;
s: Symbol;
t,tmp,list:Item;
i:integer;
Key:char;

procedure AddRecord;
var tmp: Item;
begin
ClrScr;
writeln(i);
writeln('Vvedite name');
Readln(s.Name);
writeln('vvedite fam');
Readln(s.Surname);
if (list = nil) then
begin
GetMem(List, sizeof(Item));
tmp:= List;
end
else
begin
tmp:=List;
while (tmp^.next <> nil) do tmp:=tmp^.next;
GetMem(tmp^.Next, sizeof(Item));
tmp:=tmp^.next;
end;
tmp^.next:= Nil;
inc(i);
tmp^.key:=i;
tmp^.str := s;
writeln('OK');
end;

procedure ViewRecords ;
begin
ClrScr;
writeln('SPISOK');
t:=List;
while(t <> nil) do
begin
writeln(t^.key, ' ',t^.str.Name,' ',t^.str.Surname);
t:=t^.next;
end;
end;
procedure home;
begin
ClrScr;
writeln('F1 - „®Ў*ў«Ґ*ЁҐ §*ЇЁбЁ');
writeln('VNIZ - ‚лў®¤ §*ЇЁбҐ©');
writeln('VVERx - „®¬*и*пп бва**Ёж*');
end;
begin
i:=0;
ClrScr;
home;
List:=nil;
repeat
Key:=Readkey;
case Key of
#59: AddRecord;
#72: ViewRecords;
#80: home;
end;
until Key = #79;
end.

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Lapp
сообщение 22.04.2012 7:35
Сообщение #2


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


alex457, что тут такого продвинутого в твоем программировании? То, что ты не можешь список нормально организовать?? В следующий раз, пожалуйста, создавай тему в Задачах.

Тема переносится..


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 18:23
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"