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

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

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

 
 Ответить  Открыть новую тему 
> Работа с внешними файлами, Использование переменных динамического типа
сообщение
Сообщение #1


Интерпретатор


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

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


какие тут админы добрые... nea.gif ладно, вот по теме теже самое...
Задача!
Тема:
Работа с внешними файлами

Условие:
Создать файл, содержащий сведения о студентах вашей группы (ФИО, дата рождения):
а) Выбрать самого младшего студента.
б) Выбрать самого старшего.
в) упорядочить по возрасту.


Вот мой ответ:
НЕ МОГУ ДОЕХАТЬ КАК ПУНКТ 3 СДЕЛАТЬ



program Z1;
type
info=record
fam,im,ot:string[15];
dr,mr,gr:integer;
end;
Spisok=file of info;
var
inf:info;
spi:spisok;
i,msd,msm,msg,ssd,ssm,ssg,k:integer;
begin
writeln('‚ўҐ¤ЁвҐ Є(r)«ЁзҐбвў(r) бв㤥в(r)ў:');
readln(k);
assign(spi,'g:\stud.dat');
rewrite(spi);
for i:=1 to k do
begin
with inf do
begin
writeln('Ќ(r)¬Ґа бв㤥в : ',i,' ”(r)а¬ в § ЇЁбЁ: ” ¬Ё«Ёп, ?¬п, ЋвзҐбвў(r), „Ґм! ЊҐбпж! ѓ(r)¤! а(r)¦¤ҐЁп');
readln(fam);
readln(im);
readln(ot);
readln(dr);
readln(mr);
readln(gr);
end;
write(spi,inf);
end;
close(spi);
reset(spi);
{‘ ¬л(c) ¬« ¤иЁ(c)}
ssd:=0;
ssm:=0;
ssg:=0;
for i:=1 to k do
begin
read(spi,inf);
if (inf.gr>ssg) then
   begin
    ssg:=inf.gr;
    ssm:=inf.mr;
    ssd:=inf.dr;
   end;
 if (inf.gr=ssg) then
     begin
      if (inf.mr>ssm) then
       begin
        ssg:=inf.gr;
        ssm:=inf.mr;
        ssd:=inf.dr;
       end;
    if (inf.mr=ssm) then
          begin
           if (inf.dr>ssd) then
            begin
             ssg:=inf.gr;
             ssm:=inf.mr;
             ssd:=inf.dr;
            end;
           end;
         end;
       end;
close(spi);
reset(spi);

{‘ ¬л(c) бв аиЁ(c)}
msd:=ssd;
msm:=ssm;
msg:=ssg;
for i:=1 to k do
begin
read(spi,inf);
if (inf.gr<msg) then
   begin
    msg:=inf.gr;
    msm:=inf.mr;
    msd:=inf.dr;
   end;
 if (inf.gr=msg) then
     begin
      if (inf.mr<msm) then
       begin
        msg:=inf.gr;
        msm:=inf.mr;
        msd:=inf.dr;
       end;
    if (inf.mr=msm) then
          begin
           if (inf.dr<msd) then
            begin
             msg:=inf.gr;
             msm:=inf.mr;
             msd:=inf.dr;
             writeln('=! ',inf.fam,inf.im,inf.ot,inf.dr,inf.mr,inf.gr);
            end;
           end;
         end;
       end;
close(spi);
reset(spi);
{Џ(r)бва(r)ҐЁҐ бЇЁбЄ }
for i:=1 to k do
begin
read(spi,inf);
if (inf.gr<ssg) then
   begin
    writeln('= ',inf.fam,inf.im,inf.ot,inf.dr,inf.mr,inf.gr);
   end;
 if (inf.gr=ssg) then
     begin
      if (inf.mr<ssm) then
       begin
        writeln('= ',inf.fam,inf.im,inf.ot,inf.dr,inf.mr,inf.gr);
       end;
    if (inf.mr=ssm) then
          begin
           if (inf.dr<ssd) then
            begin
             writeln('= ',inf.fam,inf.im,inf.ot,inf.dr,inf.mr,inf.gr);
            end;
           end;
         end;
        end;
close(spi);
reset(spi);
{+1}
for i:=1 to k do
begin
read(spi,inf);
if (ssd=inf.dr) and (ssm=inf.mr) and (ssg=inf.gr) then writeln('= ',inf.fam,inf.im,inf.ot,inf.dr,inf.mr,inf.gr);
end;
close(spi);
reset(spi);
{‘ЇЁб(r)Є Ё +1 ўлў(r)¤Ёв в(r)«мЄ(r) ўҐбм ўўҐ¤сл(c) бЇЁб(r)Є...  ЉЂЉ ”ЏЋђџ„Ћ—?’њ ЏЋ ‚Ћ‡ђЂ‘’”???}
{‚лў(r)¤ १г«мв в }
for i:=1 to k do
begin
read(spi,inf);
if (ssd=inf.dr) and (ssm=inf.mr) and (ssg=inf.gr) then writeln('Њ« ¤иЁ(c) бв㤥в= ',inf.fam,inf.im,inf.ot,inf.dr,inf.mr,inf.gr);
if (msd=inf.dr) and (msm=inf.mr) and (msg=inf.gr) then writeln('‘в аиЁ(c) бв㤥в= ',inf.fam,inf.im,inf.ot,inf.dr,inf.mr,inf.gr);
end;
close(spi);
readln;
end.


Задача 1.1!
Тема:
Использование переменных динамического типа

Условие:

1. Создать однонаправленный список, состоящий из элементов, в качестве дынных которых используются записи из задачи 1
2. Вывести на экран данные динамического списка на экран
3. Дополнить список в начале и в конце...
4. Удалить элемент:
а) первый в списке
б) последний в списке
в) с заданным номером
г) с заданным ключём
5. Поменять местами элементы:
а) с заданными номерами;
б) с заданными ключами.

Вот мой ответ:
ХЗ


Сообщение отредактировано: DCRM -


--------------------
Сноп огня в кулаке эта жизнь нажила,
Возжелавшая боли и брани,
Много жизней Орды,
Поле брани берёт,
Гневь и кровь льются реками,
И горят вдалеке полевые костры,
И остры адамантовы грани.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата
НЕ МОГУ ДОЕХАТЬ КАК ПУНКТ 3 СДЕЛАТЬ
Ты хочешь упорядочивать прямо в файле? Можно, конечно, по тому же принципу, как делается любая из сортировок массива, только вместо обращения к элементу массива обращаешься к записи файла... Для примера: если брать "Пузырек": Методы сортировок , то нечто подобное в файле будет выглядеть так:

For i := 1 To FileSize(f) Do
  For j := FileSize(f) DownTo i+1 Do Begin
    Seek(f, j - 1); Read(f, Xj);
    Seek(f, j - 2); Read(f, Xpred_j);
    If Xpred_j > Xj Then Begin
      Seek(f, j - 2); Write(Xj); { <--- на позицию pred_j пишем то, что было в j }
      Seek(f, j - 1); Write(Xpred_j); { <--- и наоборот... Результат - поменяли местами записи }
    End
  End;


Цитата
Использование переменных динамического типа

Все о динамических структурах данных. (Списки)
или
Динамические массивы и матрицы
(но использование списков будет проще, потому что для преобразования программы по второй ссылке в то, что требуется тебе, нужно еще довольно много добавить, по крайней мере - не одну строчку кода)
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Интерпретатор


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

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


Хм.. после 2.5х бессонных ночей вот что навоял!
9я! Работает!!!
Вот код:

Program Lab_9_v1;
uses
  Crt;
const
  fSpi='c:\Stud.dat';
  fSort='c:\StudSort.dat';
  kMax=100;
  lVozrDate=True;  {‘(r)авЁа(r)ўЄ  True-Ї(r) ў(r)§а бв ­Ёо ¤ вл,False-Ї(r) гЎлў ­Ёо}
type
  ukinfo=^info;
  info=record
    fam,im,ot:string[15];
    ddmmgggg:string[10];
    uk:ukinfo;
  end;
  Spisok=file of info;
var
  inf:info;
  spi,sort:spisok;
  i,k,iMlad,iStar,j:integer;
  ggggmmddMin,ggggmmddMax,ggggmmddSt:longint;
  obrabotano:array[1..kMax] of byte;

{Ќ  ўе(r)¤Ґ бЁ¬ў(r)«м­ п ¤¤.¬¬.ЈЈЈЈ, ­  ўле(r)¤Ґ зЁб«(r)ў п ЈЈЈЈ¬¬¬¤¤}
function Date(dd_mm_gggg:string):longint;
var
  code:integer;
  den,mes,god:longint;
begin
  Val(Copy(dd_mm_gggg,1,2),den,code);
  Val(Copy(dd_mm_gggg,4,2),mes,code);
  Val(Copy(dd_mm_gggg,7,4),god,code);
  Date:=god*10000+mes*100+den;
end;

BEGIN
  ClrScr;

  write('‚ўҐ¤ЁвҐ Є(r)«ЁзҐбвў(r) бв㤥­в(r)ў (Є(r)«-ў(r) § ЇЁбҐ(c)):'); readln(k);
  Assign(spi,fSpi);
  Rewrite(spi);
  for i:=1 to k do
    begin
      with inf do
        begin
          writeln('‘в㤥­в (§ ЇЁбм) ­(r)¬Ґа: ',i);
          write('   ” ¬Ё«Ёп:'); readln(fam);
          write('       €¬п:'); readln(im);
          write('  ЋвзҐбвў(r):'); readln(ot);
          write('  „ в  а(r)¦¤Ґ­Ёп ў д(r)ଠ⥠¤¤.¬¬.ЈЈЈЈ (¤¤-¤Ґ­м, ¬¬-¬Ґбпж, ЈЈЈЈ-Ј(r)¤):'); readln(ddmmgggg);
          uk:=NIL;
        end;
      obrabotano[i]:=0;
      Write(spi,inf);
    end;
  Close(spi);

  {‘ ¬л(c) ¬« ¤иЁ(c)}
  iMlad:=1;
  ggggmmddMax:=-1;

  {‘ ¬л(c) бв аиЁ(c)}
  iStar:=1;
  ggggmmddMin:=30001231;  {31.12.3000}

  Reset(spi);
  for i:=1 to k do
    begin
      Read(spi,inf);
      ggggmmddSt:=Date(inf.ddmmgggg);
      if ggggmmddSt>ggggmmddMax then
        begin
          ggggmmddMax:=ggggmmddSt;
          iMlad:=i;
        end;
      if ggggmmddSt<ggggmmddMin then
        begin
          ggggmmddMin:=ggggmmddSt;
          iStar:=i;
        end;
    end;
  Close(spi);

  {‚лў(r)¤ ¬« ¤иҐЈ(r) Ё бв а襣(r)}
  writeln;
  writeln('‚ д (c)«Ґ ',fSpi,':');
  Reset(spi);
  for i:=1 to k do
    begin
      Read(spi,inf);
      if i=iMlad then
        writeln('Њ« ¤иЁ(c) N ',i,': ',inf.fam,' ',inf.im,' ',inf.ot,' ',inf.ddmmgggg);
      if i=iStar then
        writeln('‘в аиЁ(c) N ',i,': ',inf.fam,' ',inf.im,' ',inf.ot,' ',inf.ddmmgggg);
    end;
  Close(spi);

  {lVozrDate=True - ‘(r)авЁа㥬 Ї(r) ў(r)§а бв ­Ёо ¤ вл а(r)¦¤Ґ­Ёп, в.Ґ. Ї(r) гЎлў ­Ёо ў(r)§а бв }
  {lVozrDate=False - ‘(r)авЁа㥬 Ї(r) гЎлў ­Ёо ¤ вл а(r)¦¤Ґ­Ёп, в.Ґ. Ї(r) ў(r)§а бв ­Ёо ў(r)§а бв }
  {€бЇ(r)«м§гҐ¬ ¬ ббЁў obrabotano: н«-в=1-§ ЇЁбм 㦥 (r)Ўа Ў(r)в ­ , ў Їа(r)вЁў­(r)¬ б«гз Ґ =0}
  Assign(sort,fSort);
  Rewrite(sort);
  for i:=1 to k do
    begin
      if lVozrDate=True then
        ggggmmddMin:=30001231  {31.12.3000 ¤ в  а(r)¦¤Ґ­Ёп б ¬(r)Ј(r) бв а襣(r)}
      else
        ggggmmddMax:=-1;
      Reset(spi);
      for j:=1 to k do
        begin
          Read(spi,inf);
          ggggmmddSt:=Date(inf.ddmmgggg);
          if (obrabotano[j]=0) and
            ( ((lVozrDate=True) and (ggggmmddSt<=ggggmmddMin)) or
              ((lVozrDate=False) and (ggggmmddSt>=ggggmmddMax)) ) then
            begin
              ggggmmddMin:=ggggmmddSt;
              ggggmmddMax:=ggggmmddSt;
              iStar:=j;
            end;
        end;
      Close(spi);
      Reset(spi);
      for j:=1 to k do
        begin
          Read(spi,inf);
          if j=iStar then
            begin
              obrabotano[j]:=1;
              Write(sort,inf);
            end;
        end;
      Close(spi);
    end;
  Close(sort);

  writeln;
  if lVozrDate=True then
    writeln('‘(r)авЁа(r)ўЄ  Ї(r) гЎлў ­Ёо ў(r)§а бв  (д (c)« ',fSort,'):')
  else
    writeln('‘(r)авЁа(r)ўЄ  Ї(r) ў(r)§а бв ­Ёо ў(r)§а бв  (д (c)« ',fSort,'):');
  Reset(sort);
  for i:=1 to k do
    begin
      Read(sort,inf);
      writeln(inf.fam,' ',inf.im,' ',inf.ot,' ',inf.ddmmgggg);
    end;
  Close(sort);

  readln;
END.


Список создаёт и всё окей! Переходим к 10... но тут всё сложнее... Почему то нафиг вылетает(в прямом смысле этого слова! Винда ошибку какую то говорит... типа недопустимая операция по адресу... закрыть/пропустить, делал на 6ой версии паскаля... у нас в интсте 7я...) с ошибкой при перестановке по указателю и номеру...
а так УСЁ работает!!! :wacko:

Program Lab_10_v1;
uses
  Crt;
const
  fSpi='c:\Stud.dat';
type
  ukinfo=^info;
  info=record
    fam,im,ot:string[15];
    ddmmgggg:string[10];
    uk:ukinfo;
  end;
  Spisok=file of info;
var
  inf:info;
  spi:spisok;
  un,p,q,qq1,qq3,e:ukinfo;
  i,k,j:integer;
  famj,famk:string[15];
  worked:boolean;


{ўлў(r)¤ ¤Ё­.ЇҐаҐ¬Ґ­­ле}
procedure Vyvod (msg:string);
begin
  ClrScr;
  writeln(msg);
  p:=un;
  while p<>NIL do
    begin
      writeln(p^.fam,' ',p^.im,' ',p^.ot,' ',p^.ddmmgggg);
      p:=p^.uk;
    end;
  readln;
end;


{г¤ «Ґ­ЁҐ ЇҐаў(r)Ј(r) н«-в }
procedure DelFirst;
begin
  p:=un;
  un:=un^.uk;
  Dispose(p);
end;


{Ї(r)ЁбЄ Ї(r)б«Ґ¤­ҐЈ(r) н«-в  ў бЇЁбЄҐ Ё ҐЈ(r) г¤ «Ґ­ЁҐ}
procedure DelLast;
begin
  p:=un;
  while p^.uk<>NIL do
    begin
      q:=p;
      p:=p^.uk;
    end;
  q^.uk:=NIL;
  Dispose(p);
end;


{г¤ «Ґ­ЁҐ н«-в  ў бЇЁбЄҐ Ї(r) ҐЈ(r) ­(r)¬Ґаг}
procedure DelOther(nomer:integer);
var
  pred:integer;
begin
  p:=un;
  pred:=1;
  while (pred<=nomer-2) and (p<>NIL) do
    begin
      Inc(pred);
      p:=p^.uk;
    end;
  q:=p^.uk;
  p^.uk:=q^.uk;
  Dispose(q);
end;


BEGIN
  ClrScr;

  New(un);
  p:=un;

  Assign(spi,fSpi);
  Reset(spi);
  k:=0;
  writeln('‘(r)¤Ґа¦Ё¬(r)Ґ д (c)«  '+fSpi+':');
  while not Eof(spi) do
    begin
      Inc(k);
      Read(spi,inf);
      writeln(inf.fam,' ',inf.im,' ',inf.ot,' ',inf.ddmmgggg);
      if k=1 then
        begin
          p^.fam:=inf.fam;
          p^.im:=inf.im;
          p^.ot:=inf.ot;
          p^.ddmmgggg:=inf.ddmmgggg;
          p^.uk:=NIL;
        end
      else
        begin
          New(q);
          q^.fam:=inf.fam;
          q^.im:=inf.im;
          q^.ot:=inf.ot;
          q^.ddmmgggg:=inf.ddmmgggg;
          q^.uk:=NIL;
          p^.uk:=q;
          p:=q;
        end;
    end;
  Close(spi);
  readln;
  Vyvod('„ ­­лҐ ¤Ё­ ¬ЁзҐбЄ(r)Ј(r) бЇЁбЄ :');

  {¤(r)Ї(r)«­Ґ­ЁҐ бЇЁбЄ  ў ­ з «Ґ}
  New(q);
  q^.fam:='000';
  q^.im:='00';
  q^.ot:='0';
  q^.ddmmgggg:='01.01.2000';
  q^.uk:=un;
  un:=q;
  Vyvod('„ ­­лҐ ¤Ё­ ¬ЁзҐбЄ(r)Ј(r) бЇЁбЄ  (Ї(r)б«Ґ ¤(r)Ў ў«Ґ­Ёп ў ­ з «(r) бЇЁбЄ ):');

  {Ї(r)ЁбЄ Ї(r)б«Ґ¤­ҐЈ(r) н«-в  ў бЇЁбЄҐ}
  p:=un;
  while p^.uk<>NIL do
    p:=p^.uk;
  {¤(r)Ї(r)«­Ґ­ЁҐ бЇЁбЄ  ў Є(r)­жҐ}
  New(q);
  q^.fam:='666';
  q^.im:='66';
  q^.ot:='6';
  q^.ddmmgggg:='01.01.1940';
  q^.uk:=p^.uk;
  p^.uk:=q;
  Vyvod('„ ­­лҐ ¤Ё­ ¬ЁзҐбЄ(r)Ј(r) бЇЁбЄ  (Ї(r)б«Ґ ¤(r)Ў ў«Ґ­Ёп ў Є(r)­Ґж бЇЁбЄ ):');

  {г¤ «Ґ­ЁҐ ЇҐаў(r)Ј(r) н«-в }
  DelFirst;
  Vyvod('„ ­­лҐ ¤Ё­ ¬ЁзҐбЄ(r)Ј(r) бЇЁбЄ  (Ї(r)б«Ґ г¤ «Ґ­Ёп ЇҐаў(r)Ј(r) н«-в  бЇЁбЄ ):');

  {Ї(r)ЁбЄ Ї(r)б«Ґ¤­ҐЈ(r) н«-в  ў бЇЁбЄҐ Ё ҐЈ(r) г¤ «Ґ­ЁҐ}
  DelLast;
  Vyvod('„ ­­лҐ ¤Ё­ ¬ЁзҐбЄ(r)Ј(r) бЇЁбЄ  (Ї(r)б«Ґ г¤ «Ґ­Ёп Ї(r)б«Ґ¤­ҐЈ(r) н«-в  бЇЁбЄ ):');

  ClrScr;
  writeln('„«п (r)Ў¬Ґ­  н«Ґ¬Ґ­в(r)ў ўўҐ¤ЁвҐ Ёе ­(r)¬Ґа :');
  write('ЏҐаўл(c) н«Ґ¬Ґ­в:'); readln(j);
  write('‚в(r)а(r)(c) н«Ґ¬Ґ­в:'); readln(k);
  i:=1;
  p:=un;
  while (i<=j) and (p<>NIL) do
    begin
      qq1:=p;
      p:=p^.uk;
      Inc(i);
    end;
  i:=1;
  p:=un;
  while (i<=k) and (p<>NIL) do
    begin
      qq3:=p;
      p:=p^.uk;
      Inc(i);
    end;
  {(r)Ў¬Ґ­}
  e^.fam:=qq1^.fam;
  e^.im:=qq1^.im;
  e^.ot:=qq1^.ot;
  e^.ddmmgggg:=qq1^.ddmmgggg;
  qq1^.fam:=qq3^.fam;
  qq1^.im:=qq3^.im;
  qq1^.ot:=qq3^.ot;
  qq1^.ddmmgggg:=qq3^.ddmmgggg;
  qq3^.fam:=e^.fam;
  qq3^.im:=e^.im;
  qq3^.ot:=e^.ot;
  qq3^.ddmmgggg:=e^.ddmmgggg;
  Vyvod('‘ЇЁб(r)Є (Ї(r)б«Ґ (r)Ў¬Ґ­  н«-в(r)ў Ї(r) Ёе ­(r)¬Ґа ¬):');

  ClrScr;
  writeln('„«п (r)Ў¬Ґ­  н«Ґ¬Ґ­в(r)ў ўўҐ¤ЁвҐ Є«озЁ (д ¬Ё«Ёо):');
  write('ЏҐаў п д ¬Ё«Ёп:'); readln(famj);
  write('‚в(r)а п д ¬Ё«Ёп:'); readln(famk);
  worked:=true;
  p:=un;
  while (worked) and (p<>NIL) do
    begin
      qq1:=p;
      if Pos(famj,p^.fam)>0 then
        worked:=false;
      p:=p^.uk;
    end;
  worked:=true;
  p:=un;
  while (worked) and (p<>NIL) do
    begin
      qq3:=p;
      if Pos(famk,p^.fam)>0 then
        worked:=false;
      p:=p^.uk;
    end;
  {(r)Ў¬Ґ­}
  e^.fam:=qq1^.fam;
  e^.im:=qq1^.im;
  e^.ot:=qq1^.ot;
  e^.ddmmgggg:=qq1^.ddmmgggg;
  qq1^.fam:=qq3^.fam;
  qq1^.im:=qq3^.im;
  qq1^.ot:=qq3^.ot;
  qq1^.ddmmgggg:=qq3^.ddmmgggg;
  qq3^.fam:=e^.fam;
  qq3^.im:=e^.im;
  qq3^.ot:=e^.ot;
  qq3^.ddmmgggg:=e^.ddmmgggg;
  Vyvod('‘ЇЁб(r)Є (Ї(r)б«Ґ (r)Ў¬Ґ­  н«-в(r)ў Ї(r) Ёе Є«оз ¬):');

  ClrScr;
  write('„«п г¤ «Ґ­Ёп н«Ґ¬Ґ­в  ўўҐ¤ЁвҐ ҐЈ(r) ­(r)¬Ґа:'); readln(j);
  k:=0;
  p:=un;
  while p<>NIL do
    begin
      p:=p^.uk;
      Inc(k);
    end;
  if j=1 then
    DelFirst
  else
    if j=k then
      DelLast
    else
      DelOther(j);
  Vyvod('‘ЇЁб(r)Є Ї(r)б«Ґ г¤ «Ґ­Ёп н«-в  Ї(r) ҐЈ(r) ­(r)¬Ґаг:');

  ClrScr;
  write('„«п г¤ «Ґ­Ёп н«Ґ¬Ґ­в  ўўҐ¤ЁвҐ ҐЈ(r) Є«оз (д ¬Ё«Ёо):'); readln(famj);
  worked:=true;
  {Ї(r) д ¬Ё«ЁЁ (r)ЇаҐ¤Ґ«пҐ¬ ­(r)¬Ґа н«-в }
  j:=0;
  p:=un;
  while (worked) and (p<>NIL) do
    begin
      Inc(j);
      if Pos(famj,p^.fam)>0 then
        worked:=false;
      p:=p^.uk;
    end;
  if j=1 then
    DelFirst
  else
    if j=k then
      DelLast
    else
      DelOther(j);
  Vyvod('‘ЇЁб(r)Є Ї(r)б«Ґ г¤ «Ґ­Ёп н«-в  Ї(r) ҐЈ(r) Є«озг:');

  {г­Ёзв(r)¦Ґ­ЁҐ ¤Ё­.ЇҐаҐ¬Ґ­­ле}
  p:=un;
  while p<>NIL do
    begin
      p:=p^.uk;
      Dispose(un);
      un:=p;
    end;
END.

:wacko: :wacko: :wacko:

Цитата(volvo @ 28.11.2006 9:30) *

нужно еще довольно много добавить, по крайней мере - не одну строчку кода)

да уж... всего 3 сотни строчек...)))

Сообщение отредактировано: DCRM -


--------------------
Сноп огня в кулаке эта жизнь нажила,
Возжелавшая боли и брани,
Много жизней Орды,
Поле брани берёт,
Гневь и кровь льются реками,
И горят вдалеке полевые костры,
И остры адамантовы грани.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



- Текстовая версия 20.04.2025 20:51
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name