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))


 

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

8311. Основи теорії держави 124.5 KB
  Основи теорії держави Мета заняття.Ознайомити студентів із поняттям держави, її ознаками, закономірностями виникнення, основними теоріями походження та функціями держави. Охарактеризувати форми держави,поняття та ознаки громадянського су...
8312. Генетика. Конспект лекций 3.82 MB
  Введение. История развития генетики Цель лекции: ознакомить учащихся с основными этапами развития генетики как науки, познакомить с зарубежными и отечественными ведущими учеными-генетиками и селекционерами, изучить особенности темы Основы генетики ...
8313. Вища фізика. Конспект лекцій 7.33 MB
  Частина 1. Механіка. Тема 1. Вступ. Кінематика поступального руху. Вступ. Кінематика поступального руху (2 год.) Мета: Ввести основні поняття механіки. План Елементи кінематики. Поступальний рух. Радіус-вектор, траєкторія, шлях, переміще...
8314. Экономическая оценка обновления парка подвижного состава АТП 391 KB
  Экономическая оценка обновления парка подвижного состава АТП Методические указания содержат определение потребности предприятия в материальных и трудовых ресурсах, расчет экономических показателей деятельности предприятия (затраты, доходы, прибыль),...
8315. Сложение элементов столбцов матрицы и нормирование вектора 215.5 KB
  Сложение элементов столбцов матрицы и нормирование вектора Часть 1. Сложение элементов в столбцах матрицы. Задача 1: Просуммировать элементы столбцов заданной матрицы размером mхn. Результат получить в одномерном массиве размером n Задача была выпол...
8316. Численные методы на Mathcad’е 594.01 KB
  Численные методы на Mathcad’е Введение Сегодня не часто вспоминают о том, что компьютеры были созданы в первую очередь для проведения научных расчетов. До сих пор научные и инженерные расчеты остаются одной из важнейших, хотя, пожалуй, и не сам...
8317. Развитие агентской сети страховой компании. Методическое пособие 438.45 KB
  Развитие агентской сети страховой компании. Методическое пособие. Книга 1 Оглавление Глава. Характеристика профессии страхового агента Психологические основы страхования Представления и стереотипы, связанные с профессией страхового агента Влияние ...
8318. Прикладная информатика в экономике. Организация производственных практик 367.87 KB
  Прикладная информатика в экономике. Организация производственных практик В работе, рекомендованной учебно-методическим советом института менеджмента и бизнеса Дальневосточного государственного университета, представлены организационно-методические п...
8319. Личность в системе профессиональной подготовки 520 KB
  Профессиональная подготовка - одна из важнейших сфер жизни общества Прогрессивное движение выражается в развитии, совершенствовании и усложнении профессий, а, следовательно, в требований профессиональной подготовки. Современная тенденция формировать...