20976

Создание фреймов и извлечение информации из них

Лабораторная работа

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

Создать фреймы, описывающие фрагмент библиотечной системы, содержащие как декларативную, так и процедуральную (в том числе использующую переменные ФРЛ-среды) составляющие.

Русский

2013-08-15

22.85 KB

5 чел.

Лабораторная работа № 7.

Создание фреймов

и извлечение информации из них.

  1.  Создать фреймы,  описывающие фрагмент библиотечной системы, содержащие как декларативную,  так и процедуральную (в том числе использующую переменные ФРЛ-среды) составляющие.

(setq TodayYear 2010)

(deframeq Book1

(Nazvanie  ($value (HTML_4_0)))

(Author  ($value (Matrosov_A)))

(Year   ($value (2003)))

(PageNum  ($value (672)))

(Popularity  ($value (2000)))

(Quantity  ($value (GetQuantity (PARM: TodayYear) (STATUS: EVAL))))

)

(deframeq Book2

(Nazvanie  ($value (Programmirovanie_na_LISP)))

(Author  ($value (Chernov_P)(Bajdun_V)(Bunin_A)))

(Year   ($value (1993)))

(PageNum  ($value (40)))

(Popularity  ($value (600)))

(Quantity  ($value (GetQuantity (PARM: TodayYear) (STATUS: EVAL))))

)

(deframeq Book3

(Nazvanie  ($value (C++)))

(Author  ($value (Stroustrup_B)))

(Year   ($value (2008)))

(PageNum  ($value (1104)))

(Popularity  ($value (2500)))

(Quantity  ($value (GetQuantity (PARM: TodayYear) (STATUS: EVAL))))

)

(deframeq Book4

(Nazvanie  ($value (PHP_5/6)))

(Author  ($value (Kuznecov_M)))

(Year   ($value (2010)))

(PageNum  ($value (1024)))

(Popularity  ($value (1800)))

(Quantity  ($value (GetQuantity (PARM: TodayYear) (STATUS: EVAL))))

)

(deframeq Book5

(Nazvanie  ($value (JavaScript)))

(Author  ($value (Flanagan_D)))

(Year   ($value (2009)))

(PageNum  ($value (992)))

(Popularity  ($value (1900)))

(Quantity  ($value (GetQuantity (PARM: TodayYear) (STATUS: EVAL))))

)

(passertq GetQuantity (Y)

(

(setq P (- (car (fget :FRAME Popularity)) (* 200 (- Y (car (fget :FRAME Year))))))

(cond

 ((> P 0) P)

 (T 0)

)

))

пример

(fget book1 quantity)  => 600

  1.  Добавить во фреймы, определенные в предыдущем задании, дополнительную информацию всеми имеющимися способами.
  2.  Извлечь из определенных в предыдущих заданиях фреймов информацию по заданному множеству запросов.

пример

(fput book1 oldname $value HTML_4_1)

(fget book1 oldname)  => HTML_4_1

  1.  Реализовать  функцию последовательного просмотра на экране фреймов из заданного списка.  Предусмотреть  запрос  о  направлении дальнейшего просмотра списка фреймов.

(defun FrameOutput1 (FL Num Fl2 ch)

(loop

 (TERPRI 25)

 (print (list NAZVANIE: (car (fget (car fl) Nazvanie))))

 (print (list AVTOR: (fget (car fl) Author)))

 (print (list YEAR: (car (fget (car fl) Year))))

 (print (list PAGES: (car (fget (car fl) Pagenum))))

 (print (list TIRAZH: (car (fget (car fl) Popularity))))

 (print (list KOL-VO: (car (fget (car fl) Quantity))))

 (print "_________________________")

 (print "<<-- (1) -->> (2) X (3)")

 (setq S (read input))

 ((equal S '3) (TERPRI 25))

 (cond

  ((and  (equal S '1) (not (NULL Fl2)))

    

   (setq Num (Sub1 Num))

   (setq Fl (Cons (car FL2) FL))

   (setq FL2 (cdr FL2))

  )

  ((and  (equal S '2) (not (Null (cdr FL))))

   (setq Num (Add1 Num))

   (setq Fl2 (Cons (car FL) Fl2))

   (setq FL  (cdr FL))

  )

 )

)

)

(defun FrameOutput (Flist)

(cond

 ((Null Flist) Error!_Wrong_frame_argument!)

 (T (FrameOutput1 Flist 1))

)

)

(setq Lib '(Book1 book2 book3 book4))


 

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

24975. Уравнение состояния идеального газа. (Уравнение Менделеева—Клапейрона.) Изопропессы 41.5 KB
  Процессы в газах. Эти величины называют параметрами состояния газа. Для произвольной массы газа единичное состояние газа описывается уравнением Менделеева Клапейрона: pV = mRT M где р давление V объем т масса М молярная масса R универсальная газовая постоянная.
24976. Испарение и конденсация. Насыщенные и ненасыщенные пары. Влажность воздуха. Измерение влажности воздуха 23.5 KB
  Поэтому атмосферное давление представляет собой сумму давления сухого воздуха и находящегося в нем водяного пара. Давление водяного пара будет максимальным при насыщении воздуха паром. Так давление насыщенного пара не зависит от объема но зависит от температуры. Эта зависимость не может быть выражена простой формулой поэтому на основе экспериментального изучения зависимости давления насыщенного пара от температуры составлены таблицы по которым можно определить его давление при различных температурах.
24977. Кристаллические и аморфные тела. Упругие и пластические деформации твердых тел 24 KB
  Твердые тела. Кристаллические тела. Аморфные тела.
24978. Работа в термодинамике. Внутренняя энергия. Первый закон термодинамики. Применение первого закона к изопроцессам. Адиабатный процесс 29.5 KB
  Существуют два способа изменения внутренней энергии: теплопередача и совершение механической работы например нагревание при трении или при сжатии охлаждение при расширении. Теплопередача это изменение внутренней энергии без совершения работы: энергия передается от более нагретых тел к менее нагретым. Теплопередача бывает трех видов: теплопроводность непосредственный обмен энергией между хаотически движущимися частицами взаимодействующих тел или частей одного и того же тела; конвекция перенос энергии потоками жидкости или газа и...
24979. Взаимодействие заряженных тел. Закон Кулона. Закон сохранения электрического заряда 31 KB
  Способность электрических зарядов как к взаимному притяжению так и к взаимному отталкиванию объясняется существованием двух видов зарядов. алгебраическая сумма зарядов всех тел остается постоянной: q1 q2 . Появление и исчезновение электрических зарядов на телах в большинстве случаев объясняется переходами элементарных заряженных частиц электронов от одних тел к другим. Законы взаимодействия неподвижных электрических зарядов изучает электростатика.
24980. Работа и мощность в цепи постоянного тока. Электродвижущая сила. Закон Ома для полной цепи 26 KB
  Работа тока. В электрическом поле из формулы определения напряжения U = A q легко получить выражение для расчета работы переноса электрического заряда А = Uq так как для тока заряд q = It то работа тока: А = Ult или А = I2R t = U2 R t. При прохождении тока по проводнику количество теплоты выделившейся в проводнике прямо пропорционально квадрату силы тока сопротивлению проводника и времени прохождения тока.
24981. Магнитное поле, условия его существования. Действие магнитного поля на электрический заряд и опыты, подтверждающие это действие. Магнитная индукция 54 KB
  Магнитное взаимодействие движущихся электрических зарядов согласно представлениям теории близкодействия объясняется следующим образом: всякий движущийся электрический заряд создает в окружающем пространстве магнитное поле. Магнитное поле особый вид материи который возникает в пространстве вокруг любого переменного электрического поля. С современной точки зрения в природе существует совокупность двух полей электрического и магнитного это электромагнитное поле оно представляет собой особый вид материи т.
24982. Полупроводники. Собственная и примесная проводимость полупроводников. Полупроводниковые приборы 31.5 KB
  Собственная и примесная проводимость полупроводников. Полупроводниковые приборы План ответа 1. Полупроводниковые приборы. Применение полупроводников.
24983. Электромагнитная индукция. Магнитный поток. Закон электромагнитной индукции. Правило Ленца 42 KB
  Закон электромагнитной индукции. Опыты по электромагнитной индукции. Явление электромагнитной индукции было открыто Майклом Фарадеем в 1831 г. Магнитным потоком через замкнутый контур площадью S называют физическую величину равную произведению модуля вектора магнитной индукции В на площадь контура S и на косинус угла а между направлением вектора магнитной индукции и нормалью к площади контура.