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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.10.2013, 22:46   #1
soft_worm
Новичок
Джуниор
 
Регистрация: 22.10.2013
Сообщений: 1
Печаль списки!

Доброго времени суток! Ребята, прошу войти в положение и помочь. Работал в чистом паскале последний раз очень очень давно, сейчас только на Си и Делфи пишу, а времени вспоминать и разбираться с ним СОВСЕМ нет. А в универе ни с того, ни с сего (на 4 курсе) решили загрузить нас списками. В связи с этим прошу помощии!!
..
Дан однонаправленный список слов, среди которых есть пустые. Поменять первое и последнее НЕПУСТЫЕ слова.
soft_worm вне форума Ответить с цитированием
Старый 23.10.2013, 07:02   #2
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Напишите код на делфи, раз уж сказали, что умеете. Я переведу его в паскалевский.

А не напишете - фриланс где-то ниже, Вам задачу за денежку решат легко.
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 23.10.2013, 08:33   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Думаю что ядро может выглядеть так:
Цитата:
Дан однонаправленный список слов, среди которых есть пустые.
Код:
type
 r=record
  s:string; next:pointer;
 end;
var nr,lr,pr,head:^r; s:string;
begin
while true do begin
 new(pr);
 if head=nil then head:=pr;
 if lr<>nil then lr^.next:=pr;  lr:=pr;
 readln(pr^.s);
end;
...
Цитата:
Поменять первое и последнее НЕПУСТЫЕ слова.
Код:
...
lr:=head;pr:=head; nr:=nil;
while pr<>nil do begin
 if (nr=nil)and(pr^.s<>'') then nr:=pr;
 if (pr^.s<>'') then lr:=pr;
 pr:=pr^.next;
end;
if nr<>nil then begin
 s:=nr^.s; nr^s:=lr^.s; lr^.s:=s;
end;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
списки Илья Николаевич Microsoft Office Access 5 08.05.2012 19:56
Списки. Leshii Паскаль, Turbo Pascal, PascalABC.NET 2 20.01.2012 12:02
списки с++ Cinnamon Помощь студентам 0 10.01.2012 20:21
Списки AnnNet Microsoft Office Excel 5 23.11.2009 20:29