20983

Функционалы

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

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

DEFUN SORT FileName File1 File2 File3 File4 SETQ F OPENINPUTFILE FileName SETQ F1 OPENOUTPUTFILE File1 SETQ F2 OPENOUTPUTFILE File2 SETQ F3 OPENOUTPUTFILE File3 SETQ F4 OPENOUTPUTFILE File4 IF NOT EQ NIL F LOOP EQ NIL SETQ X READ F SORT_IS_FINISHED COND NUMBERP X WRITE X F1 LISTP X WRITE X F2 ;EQ SYM TYPE X WRITE X F3 T WRITE X F4 ERROR_WRONG_FILE_NAME .

Русский

2013-08-02

20.7 KB

3 чел.

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

Функционалы.

  1.  Сформировать список,  содержащий номера позиций  элементов исходного списка, удовлетворяющих заданному условию.

(DEFUN  F21_1  (L F K)

(COND ((NULL L)  NIL)

((FUNCALL F (CAR L)) (CONS K (F21_1 (CDR L) F (+ K 1))))  

(T (F21_1 (CDR L) F (+ K 1)))

)

)

(DEFUN F21 (L F)

(COND ((NOT (LISTP L)) ERROR!_WRONG_LIST_ARGUMENT!)

((NULL L) LIST_IS_EMPTY!)

 (T (F21_1 L F 1))

)

)

пример

(F21 ‘(-10 3 A P 4 -3 2 6 S) ‘MINUSP)  => (1 6)

 (F21 ‘(-10 3 A P 4 -3 2 6 S) ‘PLUSP)   => (2 5 7 8)

(F21 ‘(-10 3 A P 4 -3 2 6 S) ‘SYMBOLP)  => (3 4 9)

  1.  Задан линейный числовой список.  Сформировать список  сумм подмножеств элементов исходного списка таким образом, что на первом месте должна стоять сумма всех элементов списка,  на втором – сумма элементов без первого, на третьем - сумма элементов без первых двух и т.д.

(DEFUN F22 (L)

(COND ((NOT (LISTP L)) ERROR!_WRONG_LIST_ARGUMENT!)

((NULL L) LIST_IS_EMPTY!)

 (T (MAPLIST '(LAMBDA(L) (APPLY + L)) L))

)

)

пример

(F22 ‘(1 1 1 1 1 1 1))  => (7 6 5 4 3 2 1)

(F22 ‘(1 2 3 4 5 6 7))  => (28 27 25 22 18 13 7)

  1.  Удалить из исходного линейного списка все вхождения заданного элемента.

(DEFUN F23 (L X)

(COND ((NOT (ATOM X)) ERROR!_WRONG_ARGUMENT!)

((NOT (LISTP L)) ERROR!_WRONG_LIST_ARGUMENT!)

((NULL L) LIST_IS_EMPTY!)

(T  (MAPCON '(LAMBDA (L)

(IF (EQ (CAR L) X)

NIL

(LIST (CAR L))

)

)

L)

)

)

)

пример

(F23 ‘(A C X C A B Y X D A) X)   => (A C C A B Y D A)

(F23 ‘(A C X C A B Y X D A) A)   => (C X C B Y X D)

(F23 ‘(0 1 0 0 1 1 1 0 0) 1)   => (0 0 0 0 0)

  1.  Оставить в исходном линейном списке не более одного вхождения каждого элемента.

(DEFUN F24 (L)

(COND ((NOT (LISTP L)) "WRONG LIST ARGUMENT")

 (T  (MAPCON '(LAMBDA (L)

(IF (MEMBER (CAR L) (CDR L))

NIL

(LIST (CAR L))

)

)

     L)

)

)

)

пример

(F24 ‘(A C X C A B Y X D A))   => (A C X B Y D)

(F24 ‘(0 1 0 0 1 1 1 0 0))   => (0 1)

  1.  Даны два исходных списка одинакового размера. Сформировать из неравных друг другу элементов с одинаковыми порядковыми номерами точечные пары, объединив их в один результирующий список.

(DEFUN F25 (L1 L2)

(COND ((OR (NOT (LISTP L1)) (NOT (LISTP L2))) ERROR!_WRONG_LIST_ARGUMENT!)

((OR (NULL L1) (NULL L2)) ERROR!_LIST_IS_EMPTY!)

((NOT (= (LENGTH L1) (LENGTH L2))) ERROR!_DIFFERENT_LENGTHS!)

(T  (MAPCAN '(LAMBDA (L1 L2)

(IF (AND (ATOM L1) (ATOM L1) (Not (EQ L1 L2)))

(LIST (CONS L1 L2))

NIL

)

)

L1 L2)

)

)

)

пример

(F25 ‘(A B C D 2 F) ‘(A C X 3 6 F))  => ((B . C) (C . X) (D . 3) (2 . 6))

(F25 ‘(A B C D 2 F) ‘(A C X 3))   => ERROR!_DIFFERENT_LENGTHS!

Входной  файл  на внешнем носителе содержит исходные данные в виде множества допустимых в ЛИСП структур данных.  Рассортировать его  и записать на внешний носитель в виде четырех файлов, каждый из которых содержит либо  числовые  атомы,  либо  символьные атомы, либо точечные пары, либо списки.

(DEFUN SORT (FileName File1 File2 File3 File4)

(SETQ F   (OPEN-INPUT-FILE FileName))

(SETQ F1 (OPEN-OUTPUT-FILE File1))

(SETQ F2 (OPEN-OUTPUT-FILE File2))

(SETQ F3 (OPEN-OUTPUT-FILE File3))

(SETQ F4 (OPEN-OUTPUT-FILE File4))

(IF (NOT (EQ NIL F))

 (LOOP

  

  ((EQ NIL (SETQ X (READ F))) SORT_IS_FINISHED)

  (COND ((NUMBERP X) (WRITE X F1))

   ((LISTP X) (WRITE X F2))

   ;((EQ SYM (TYPE X)) (WRITE X F3))

   (T (WRITE X F4))

)

)

ERROR!_WRONG_FILE_NAME!

)

)


 

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

17886. ПРАКТИКА ОБЩЕГО ЭКОНОМИЧЕСКОГО РАВНОВЕСИЯ 31.22 KB
  НАЗВАНИЕ ПРАКТИЧЕСКОГО ЗАНЯТИЯ: ПРАКТИКА ОБЩЕГО ЭКОНОМИЧЕСКОГО РАВНОВЕСИЯ ЦЕЛЬ ЗАНЯТИЯ: Определить условия общего и частичного равновесия ФОРМУЛИРОВАНИЕ ОСНОВНОЙ ИДЕИ ЗАНЯТИЯ 1. Уравнения потребительского спроса. Спрос отдельного потребителя на каждо
17887. ЭКОНОМИЧЕСКАЯ РОЛЬ ГОСУДАРСТВА НА ПРАКТИКЕ 99.48 KB
  НАЗВАНИЕ ПРАКТИЧЕСКОГО ЗАНЯТИЯ: ЭКОНОМИЧЕСКАЯ РОЛЬ ГОСУДАРСТВА НА ПРАКТИКЕ ЦЕЛЬ ЗАНЯТИЯ: Определить ключевые понятия в экономической роли государства на практике выявить основные причины отказа рынка или фиаско рынка познакомиться с различными вариантами ...
17888. Микроэкономика. Методические указания к самостоятельному изучению дисциплины 216.5 KB
  Методические указания к самостоятельному изучению дисциплины Микроэкономика для студентов обучающихся по направлениям 0305 Экономика и предпринимательство и Менеджмент всех форм обучения Методические указания к самостоятельному изучению дисциплины ...
17889. СВІТОВЕ ГОСПОДАРСТВО ЯК ЦІЛІСНА СИСТЕМА. ЗАГАЛЬНОЦИВІЛІЗАЦІЙНІ ЕКОНОМІЧНІ ОЗНАКИ ТА КРИТЕРІЇ 277 KB
  Тема 1 . СВІТОВЕ ГОСПОДАРСТВО ЯК ЦІЛІСНА СИСТЕМА. ЗАГАЛЬНОЦИВІЛІЗАЦІЙНІ ЕКОНОМІЧНІ ОЗНАКИ ТА КРИТЕРІЇ ПЛАН Поняття світового господарства 2. Загальне поняття €œміжнародна економіка€ 3. Загальноцивілізаційні економічні ознаки та критерії. Пре...
17890. ВИДІЛЕННЯ ПІДСИСТЕМ СВІТОВОГО ГОСПОДАРСТВА ТА ПОКАЗНИКИ ЙОГО РОЗВИТКУ 204 KB
  Тема 2 . ВИДІЛЕННЯ ПІДСИСТЕМ СВІТОВОГО ГОСПОДАРСТВА ТА ПОКАЗНИКИ ЙОГО РОЗВИТКУ ПЛАН Критерії виділення підсистем світового господарства. Основні показники розвитку світового господарства. Групи країн у світовій економіці. Класифікації країн за метод...
17891. ГЛОБАЛЬНА ЕКОНОМІЧНА СИСТЕМА: КОНЦЕПЦІЇ ТА МОДЕЛІ РОЗВИТКУ 101 KB
  Тема 3 . ГЛОБАЛЬНА ЕКОНОМІЧНА СИСТЕМА: КОНЦЕПЦІЇ ТА МОДЕЛІ РОЗВИТКУ ПЛАН 1. Концепції глобальної економічної системи 2. Головні елементи міжнародної економічної системи 3. Моделі економічного розвитку 1. Концепції глобальної економічної системи Світов...
17892. МІЖНАРОДНА ТОРГІВЛЯ 354.5 KB
  тема 4. Міжнародна торгівля 1. Сутність міжнародної торгівлі та її роль в системі світогосподарських зв’язків. Еволюція теорій міжнародної торгівлі 2. Види та методи сучасної міжнародної торгівлі 3. Міжнародна торгівля послугами 4. Показники міжнародної торгівлі 5.
17893. Світова економіка: суть, основні закономірності і тенденції її розвитку на рубежі ХХ-ХХ1вв 53 KB
  Лекція 1. Світова економіка: суть основні закономірності і тенденції її розвитку на рубежі ХХХХ1вв. Світова економіка є складною системою що включає безліч складових її елементів. Основу цієї системи утворюють міжнародне і обмежене рамками окремих держав національне в...
17894. Субєкти сучасного світового господарства і система показників, що характеризують їх місце в світовій економіці 45.5 KB
  Лекція 2. Суб'єкти сучасного світового господарства і система показників що характеризують їх місце в світовій економіці. 1. Основні типи держав і їх економічних об'єднань в світовій економіці У міжнародній практиці всі країни світу підрозділяються на три основні груп