Функциональное и логическое программирование. Лабораторные работы №№1 - 5. Вариант 2.
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
- Программа для просмотра текстовых файлов
Описание
Лабораторная работа №1
Вариант задачи выбирается по последней цифре пароля. Программа должна быть написана на языке ЛИСП.
Текст функции можно набирать в любом текстовом редакторе (например, в Блокноте). Файл следует сохранить с расширением lsp, лучше в той же папке, где находится ЛИСП. Запуск интерпретатора ЛИСПа и загрузки текста написанной функции можно осуществить 3 способами:
Наложите с помощью мышки файл с текстом функции на файл mulisp.com.
Запустите файл mulisp.com и после появления приглашения в виде $ введите в командную строку:
load 'имя файла
Скопируйте в буфер обмена текст функции, запустите файл mulisp.com и после появления приглашения в виде $, зайдите в системное меню (черный квадратик в левом верхнем углу окна работы) и выполните команду Изменить-Вставить. После вставки текста нажмите клавишу Enter.
При отсутствии ошибок появится приглашение $, после которого можно обращаться к функции и проверять ее работу. Выход из ЛИСПа осуществляется с помощью команды (system).
Обращение к функции можно также включить в файл после описания функции, но для того, чтобы результаты появились на экране, следует использовать функцию PRINT с аргументом – обращением к функции. Например, для функции ATOM_IN_LIST из примера2 п 1.10.1 можно записать в файл определение и вызов функции:
(defun ATOM_IN_LIST (l)
(COND
((NULL l) nil)
((ATOM (CAR l)) t)
(t (ATOM_IN_LIST (CDR l)))
)
)
(PRINT (ATOM_IN_LIST '(() 1 (1 2) )))
После запуска ЛИСПа и загрузки файла, на экран будут выведен результат работы функции: t.
В теле функции использование операторов set и setq не допускается!
Вариант 2
Опpеделите на языке ЛИСП и проверьте работу функции, заменяющей в списке L все вхождения x на y.
Например, при x=1, y=4, L= (2 1 5 1 1 8) функция должна возвращать список (2 4 5 4 4 8).
Лабораторная работа №2
Вариант задачи выбирается по последней цифре пароля. Текст функции сохраняйте в файле. Функция может вызывать вспомогательные функции. В теле функций использование операторов set и setq не допускается!
Вариант 2
Опpеделите на языке ЛИСП и проверьте работу функции, пpеобpазующей инфиксную запись опеpаций выpажения в пpединфиксную и возвpащающую значение выpажения.
Hапpимеp, для списка ((-8 + 10) * (1 + 2) функция должна вернуть 6.
Указание: Для вычисления значения выражения используйте функцию EVAL.
Лабораторная работа №3
Вариант задачи выбирается по последней цифре пароля. Текст функции сохраняйте в файле. В теле функции использование операторов set и setq не допускается!
Вариант 2,7
Опpеделите на языке ЛИСП функционал, аналогичный встроенному предикату MAPLIST для одноуровнего списка. (Используйте применяющие функционалы). Проверьте работу функционала для функций:
-REVERSE;
-LIST.
Лабораторная работа №4
Вариант задачи выбирается по последней цифре пароля. Программы должны быть написаны на языке Пролог. Для запуска Turbo Prolog запустите файл prolog.exe. Запуск на выполнение Alt+R, переход в окно редактора Alt+E.
Вариант 2
Напишите на языке ПРОЛОГ программу, которая осуществляет циклический сдвиг на один элемент вправо в списке целых чисел. Список вводится с клавиатуры, цель – внутренняя.
Например: Список [1,2,3,4] преобразуется в [4,1,2,3].
Лабораторная работа №5
Вариант задачи выбирается по последней цифре пароля. Программы должны быть написаны на языке Пролог. При преобразовании файла должны быть сохранены переводы строк. К отчету следует приложить тексты файлов с входными и выходными данными. Для просмотра файлов с данными можно открыть вспомогательное окно редактора с помощью клавиши F8 (при этом должно быть активным окно редактора).
Вариант 2
Файл содержит сведения о сотрудниках учреждения в виде: фамилия имя отчество (сведения о каждом сотруднике размещаются на новой строке). Запишите эти сведения в другой файл по образцу: фамилия и.о.
Например, строка “Иванов Петр Николаевич” преобразуется в строку “Иванов П.Н.”.
Вариант задачи выбирается по последней цифре пароля. Программа должна быть написана на языке ЛИСП.
Текст функции можно набирать в любом текстовом редакторе (например, в Блокноте). Файл следует сохранить с расширением lsp, лучше в той же папке, где находится ЛИСП. Запуск интерпретатора ЛИСПа и загрузки текста написанной функции можно осуществить 3 способами:
Наложите с помощью мышки файл с текстом функции на файл mulisp.com.
Запустите файл mulisp.com и после появления приглашения в виде $ введите в командную строку:
load 'имя файла
Скопируйте в буфер обмена текст функции, запустите файл mulisp.com и после появления приглашения в виде $, зайдите в системное меню (черный квадратик в левом верхнем углу окна работы) и выполните команду Изменить-Вставить. После вставки текста нажмите клавишу Enter.
При отсутствии ошибок появится приглашение $, после которого можно обращаться к функции и проверять ее работу. Выход из ЛИСПа осуществляется с помощью команды (system).
Обращение к функции можно также включить в файл после описания функции, но для того, чтобы результаты появились на экране, следует использовать функцию PRINT с аргументом – обращением к функции. Например, для функции ATOM_IN_LIST из примера2 п 1.10.1 можно записать в файл определение и вызов функции:
(defun ATOM_IN_LIST (l)
(COND
((NULL l) nil)
((ATOM (CAR l)) t)
(t (ATOM_IN_LIST (CDR l)))
)
)
(PRINT (ATOM_IN_LIST '(() 1 (1 2) )))
После запуска ЛИСПа и загрузки файла, на экран будут выведен результат работы функции: t.
В теле функции использование операторов set и setq не допускается!
Вариант 2
Опpеделите на языке ЛИСП и проверьте работу функции, заменяющей в списке L все вхождения x на y.
Например, при x=1, y=4, L= (2 1 5 1 1 8) функция должна возвращать список (2 4 5 4 4 8).
Лабораторная работа №2
Вариант задачи выбирается по последней цифре пароля. Текст функции сохраняйте в файле. Функция может вызывать вспомогательные функции. В теле функций использование операторов set и setq не допускается!
Вариант 2
Опpеделите на языке ЛИСП и проверьте работу функции, пpеобpазующей инфиксную запись опеpаций выpажения в пpединфиксную и возвpащающую значение выpажения.
Hапpимеp, для списка ((-8 + 10) * (1 + 2) функция должна вернуть 6.
Указание: Для вычисления значения выражения используйте функцию EVAL.
Лабораторная работа №3
Вариант задачи выбирается по последней цифре пароля. Текст функции сохраняйте в файле. В теле функции использование операторов set и setq не допускается!
Вариант 2,7
Опpеделите на языке ЛИСП функционал, аналогичный встроенному предикату MAPLIST для одноуровнего списка. (Используйте применяющие функционалы). Проверьте работу функционала для функций:
-REVERSE;
-LIST.
Лабораторная работа №4
Вариант задачи выбирается по последней цифре пароля. Программы должны быть написаны на языке Пролог. Для запуска Turbo Prolog запустите файл prolog.exe. Запуск на выполнение Alt+R, переход в окно редактора Alt+E.
Вариант 2
Напишите на языке ПРОЛОГ программу, которая осуществляет циклический сдвиг на один элемент вправо в списке целых чисел. Список вводится с клавиатуры, цель – внутренняя.
Например: Список [1,2,3,4] преобразуется в [4,1,2,3].
Лабораторная работа №5
Вариант задачи выбирается по последней цифре пароля. Программы должны быть написаны на языке Пролог. При преобразовании файла должны быть сохранены переводы строк. К отчету следует приложить тексты файлов с входными и выходными данными. Для просмотра файлов с данными можно открыть вспомогательное окно редактора с помощью клавиши F8 (при этом должно быть активным окно редактора).
Вариант 2
Файл содержит сведения о сотрудниках учреждения в виде: фамилия имя отчество (сведения о каждом сотруднике размещаются на новой строке). Запишите эти сведения в другой файл по образцу: фамилия и.о.
Например, строка “Иванов Петр Николаевич” преобразуется в строку “Иванов П.Н.”.
Дополнительная информация
март 2016, зачтено
Похожие материалы
Функциональное и логическое программирование. Лабораторная работа №1. Вариант №2
nik200511
: 16 мая 2016
Лабораторная работа №1
Вариант задачи выбирается по последней цифре пароля. Программа должна быть написана на языке ЛИСП.
№
Текст функции можно набирать в любом текстовом редакторе (например, в Блокноте). Файл следует сохранить с расширением lsp, лучше в той же папке, где находится ЛИСП. Запуск интерпретатора ЛИСПа и загрузки текста написанной функции можно осуществить 3 способами:
Наложите с помощью мышки файл с текстом функции на файл mulisp.com.
Запустите файл mulisp.com и после появлен
41 руб.
Лабораторная работа №1 по "Функциональное и логическое программирование".
Eva
: 3 июня 2011
Лабораторная работа №1 по "Функциональное и логическое программирование".
Вариант 1.
Задание к варианту 1.
Определите на языке ЛИСП и проверьте работу функции, преобразующей список L в "двойной" список таким образом, чтобы каждый элемент удвоился.
Например, при L=(1 2 3) функция должна возвращать список (1 1 2 2 3 3).
12 руб.
Лабораторная работа №1 По дисциплине: «Функциональное и логическое программирование»
vohmin
: 1 июня 2018
Задание
Опpеделите на языке ЛИСП и проверьте работу функции, преобразующей список L в "двойной" список таким образом, чтобы каждый элемент удвоился.
Например, при L=(1 2 3) функция должна возвращать список (1 1 2 2 3 3).
Описание решения
Решение – рекурсивное. Функция CREATE преобразует список L в "двойной" список таким образом, чтобы каждый элемент удвоился.
50 руб.
Лабораторная работа №1 по дисциплине Функциональное и логическое программирование
Dusya
: 12 сентября 2012
Определите на языке ЛИСП и проверьте работу функции, возвращающей список из n копий заданного атома x.
Например, при x=4, n=5 функция должна возвращать список (4 4 4 4 4).
2. Описание функции, алгоритм работы
Определим функцию с двумя аргументами (CopyN X N), где X-заданный атом, N-количество копий этого атома в возвращаемом списке.
В первую очередь надо проверить, что заданное значение X – это атом. Если это не так, то функция вернет NIL и завершит работу.
В противном случае проверим, что зада
100 руб.
Лабораторная работа № 1 по дисциплине: Функциональное и логическое программирование
1231233
: 29 января 2012
Вариант 7
Условие задачи:
Опpеделите на языке ЛИСП и проверьте работу функции, возвращающей список позиций элемента, заданного параметром x, в списке L.
Исходный текст программы:
(defun F (lambda (X L P)
(cond
((null L) nil)
((equal X (car L))
23 руб.
Функциональное и логическое программирование. Лабораторные работы №1-2. Вариант 5
Beck910
: 2 апреля 2015
Опpеделите на языке ЛИСП и проверьте работу функции, возвращающей список позиций элемента, заданного параметром x, в списке L.
Например, при x=4, L=(8 3 4 6 4 1) функция должна возвращать список (3 5).
Сформируйте новый список, включающий в себя элементы, не входящие в два списка (симметpичнуюpазность множеств).
Например: На Лиспе для списков (1 2 3 5) и (6 4 1 8 3) результатом будет список (2 5 6 4 8).
150 руб.
Функциональное и логическое программирование. Лабораторная работа №1. Вариант №1.
nik200511
: 21 января 2020
Лабораторная работа №1
Обработка списков в языке CLISP
Условие задачи
Напишите на языке CLISP программу для работы со списками по заданию. Обязательно использование рекурсии. Ввод всех входных данных должен запрашиваться с клавиатуры в процессе работы программы (функции). Не допускается использование: функционалов, а в теле рекурсивной функции - операторов SET и SETQ.
Преобразуйте одноуровневый список L во вложенный по следующему правилу.
Например, при L=(a s d f g) функция должна вернуть (
143 руб.
Функциональное и логическое программирование. Лабораторная работа №1. Вариант №1.
nik200511
: 8 июня 2018
Задание
Вариант 1
Опpеделите на языке ЛИСП и проверьте работу функции, преобразующей список L в "двойной" список таким образом, чтобы каждый элемент удвоился.
Например, при L=(1 2 3) функция должна возвращать список (1 1 2 2 3 3).
9 руб.
Другие работы
Теплотехника КГАУ 2015 Задача 2 Вариант 17
Z24
: 21 декабря 2025
Рассчитать цикл теплового двигателя с максимальной температурой рабочего тела t3 (или t4 для цикла Тринклера), в котором сжатие и расширение рабочего тела осуществляются по политропам с показателями n1 и n2 соответственно. Определить: параметры состояния рабочего тела в характерных точках цикла; подведенную и отведенную теплоту; работу цикла и его КПД; построить цикл в p-υ диаграмме. В качестве рабочего тела рассматривать воздух, зависимостью его теплоемкости от температуры — пренебречь. Тип цик
500 руб.
Сущность и особенности стратегического управления ОАО Заволжский моторный завод
GnobYTEL
: 23 марта 2014
Введение 3
ГЛАВА 1.Общая характеристика стратегического
управления предприятием 5
1.1.Сущность и основные понятия 5
1.2.Стратегическое управление как система 6
ГЛАВА П.Характеристика основных этапов стратегического
управления предприятием 9
2.1.Анализ внешней и внутренней среды предприятия 9
2.2.Определение миссии и целей предприятия 17
2.3.Разработка и выбор стратегии предприятия 26
ГЛАВА Ш.Реализация стратегии предприятия на примере
ОАО «Заволжский моторный завод» 35
Заключение 41
Список литер
15 руб.
Технологічний процес зборки бабки передньої
Aronitue9
: 26 декабря 2015
Вступ……………………………………………………….………………...…
1. Технологічна частина
1.1. Розробка технологічного процесу складання клапана впускного
2. Розрахунок об’єму випуску складальних одиниць. Визначення типу виробництва. Розрахунок такту і розміру партії випуску РЄ
3. Розробка технологічного процесу складання РЄ
3.1. Опис службового призначення РЄ
3.2 Технічні умови і норми точності на РЄ і їх зв'язок зі службовим призначенням РЄ
3.3 Вибір методів досягнення необхідної точності РЄ
3.4. Попередній вибір вид
100 руб.
Техническая термодинамика Контрольная работа 2 Задача 44
Z24
: 26 ноября 2025
Определить параметры в характерных точках циклов ДВС с изохорным (цикл Отто) и изобарным (цикл Дизеля) подводом теплоты и сопоставить значения их термических к.п.д., если начальные параметры, максимальные температуры и отведенные количества теплоты одинаковы и равны: р1 = 0,1 МПа; t1 = 20 ºС; tmax = 1800 ºС; |q2| = 480 кДж/кг. Изобразить циклы в координатах р, υ и T, s. Рабочее тело — воздух.
375 руб.