68988

Операції над динамічними рядками

Лекция

Информатика, кибернетика и программирование

Розглянемо процедуру шукання заданого елемента. Попередньо опишемо тип, який відображає рядок символів як динамічну структуру. Складемо логічну функцію виявлення заданого символу в заданому динамічному рядку. Передбачимо як побічний ефект логічної функції шукання елемента вказівку...

Украинкский

2014-09-28

38 KB

1 чел.

Лекція № 17

Тема: Операції над динамічними рядками

План заняття:

  1.  Пошук заданого елементу
  2.  Вилучення заданого елемента з рядка

Пошук заданого елемента.

Розглянемо процедуру шукання заданого елемента. Попередньо опишемо тип, який відображає рядок символів як динамічну структуру. Складемо логічну функцію виявлення заданого символу в заданому динамічному рядку. Передбачимо як побічний ефект логічної функції шукання елемента вказівку на ланку, яка відповідає першому входженню заданого символу.

program Form2;

type

Link=^LRiad;

LRiad=Record

Elem: Char;

Next: Link;

end;

function SeekElem(Rjad:Link; Elm:char; var Res:Link): Boolean;

var Rb: Link;

begin

SeekElem:=False;

Res:=nil;

Rb:=Rjad^.Next;

while (Res=nil) and (Rb<>nil) do

if Rb^.EIem=Elm then

begin

SeekElem:=True;

Res:=Rb;

end

else Rb:=Rb^.next;

end;

begin

end.

Параметрами функції SeekElem є: вказівна змінна Rjad, що вказує на рядок символів; Elm, що містить шуканий елемент -символ; Res - вказівна змінна-результат, вказує на ланку, що містить шуканий елемент; Rb - робоча змінна вказівного типу.

Вилучення заданого елемента з рядка.

Описуючи цю процедуру, будемо задавати елемент, який треба вилучити, за допомогою вказівки на ту ланку ланцюга, після якої є елемент, що його потрібно вилучити.

Схематично процедуру вилучення зобразимо так. Нехай вихідний ланцюг є (опишемо фрагмент) таким, як показано на рис. 1.

Рис. 1. Фрагмент динамічного рядка.

Вилучення елемента В треба організувати так, щоб вказівка з ланки А була на ланку С. оминаючи ланку з елементом В (рис. 2).

Рис. 2. Вилучення ланки динамічного рядка.

Описуючи процедуру вилучення заданого елемента з рядка, передбачимо знищення всієї ланки, що містить цей елемент:

program Form3;

type

Link=^LRiad;

LRiad=record

Elem: Char;

Next: Link;

end;

procedure DelElem(Lanka: Link);

var Rb: Link;

begin

Rb:=Lanka^.Next;

Lanka^.Next:=Lanka^.Next^.Next;

dispose(Rb);

end;

begin

end.

Знищуємо ланку, що містить шуканий елемент, для економії пам'яті.


 

А также другие работы, которые могут Вас заинтересовать

47112. Программы развития национальной экономики 61 KB
  В России в рамках федеральных целевых программ осуществляется: поддержка реформ в сфере образования и здравоохранения; реформа судебной системы; формирование рынка доступного жилья; модернизация АПК и создание условий для его устойчивого развития; строительство и совершенствование стратегически важных для страны объектов транспорта; поддержка государством реализации крупных транспортных инфраструктурных проектов; осуществление инновационных проектов и программ др. Реализация федеральных целевых...
47113. Конституційна організація державно влади та місцевого самоврядування в Уккраїні 59.5 KB
  Так єдиний орган законодавчої влади в Україні парламент Верховна Рада України. Гарантом державного суверенітету територіальної цілісності України дотримання Конституції України прав і свобод людини та громадянина є глава Української держави Президент. Єдиним органом законодавчої влади в Україні є парламент Верховна Рада України. Право законодавчої ініціативи у Верховній Раді України згідно з Конституцією України мають: Президент України; народні депутати України; Кабінет Міністрів України; Національний банк України.
47114. Методи розрахунку калькуляції та методи технологічних розрахунків 59 KB
  Система оплати праці в будівництві основна ст. 12 відрядна сдельная скільки заробив стільки отримав; відряднопреміальна за якістю економічністю виконаної роботи може бути надбавка до 40 зарплати; погодинна; погодиннопреміальна до 30 премія; акордна; договірна Форма оплати праці робітників визначається співвідношенням між виконаною роботою та розміром нарахованої за це заробітної плати. Залежно від того які показники приймаються за вимірник праці кількість виготовленої продукції чи кількість відпрацьованого...
47116. Архитектура и быт городов, транспорт 59.5 KB
  При создании проектов новых городов архитекторы начали уделять внимание связи микрорайонов с ландшафтом По мере развития бытовой техники в домах появлялись холодильники газовое а с 70х годов XIX в. Наиболее распространенными до конца XIX в. С 60х годов XIX в. К концу XIX в.
47120. Лицензирование природопользования и охраны окружающей среды 60.35 KB
  В соответствии с экологическим законодательством используются различные формы документов выполняющих функции лицензии. Для получения лицензии разрешения на осуществление соответствующих видов деятельности юридическое или физическое лицо должно обратиться с заявлением в органы уполномоченные на ведение лицензионной деятельности. Правом предоставления лицензии разрешения обладают также территориальные подразделения названных выше и других природоохранительных органов. В зависимости от вида лицензии разрешения определяется ее его...