Лабораторная работа. Функциональное и логическое программирование
Состав работы
|
|
|
|
|
|
|
|
|
|
Необходимые программы
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Программа для просмотра текстовых файлов
Описание
Лабораторная работа №1
Программа должна быть написана на языке ЛИСП.
Текст функции можно набирать в любом текстовом редакторе (например, в Блокноте). Файл следует сохранить с расширением lsp, лучше в той же папке, где находится ЛИСП. Запуск интерпретатора ЛИСПа и загрузки текста написанной функции можно осуществить 3 способами:
1. Наложите с помощью мышки файл с текстом функции на файл mulisp.com.
2. Запустите файл mulisp.com и после появления приглашения в виде $ введите в командную строку:
load 'имя файла
3. Скопируйте в буфер обмена текст функции, запустите файл 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 не допускается!
Вариант 4
Опpеделите на языке ЛИСП и проверьте работу функции, удаляющей n первых элементов из списка L.
Например, при n=3, L=(2 6 1 7 0) функция должна возвращать список (7 0).
Программа должна быть написана на языке ЛИСП.
Текст функции можно набирать в любом текстовом редакторе (например, в Блокноте). Файл следует сохранить с расширением lsp, лучше в той же папке, где находится ЛИСП. Запуск интерпретатора ЛИСПа и загрузки текста написанной функции можно осуществить 3 способами:
1. Наложите с помощью мышки файл с текстом функции на файл mulisp.com.
2. Запустите файл mulisp.com и после появления приглашения в виде $ введите в командную строку:
load 'имя файла
3. Скопируйте в буфер обмена текст функции, запустите файл 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 не допускается!
Вариант 4
Опpеделите на языке ЛИСП и проверьте работу функции, удаляющей n первых элементов из списка L.
Например, при n=3, L=(2 6 1 7 0) функция должна возвращать список (7 0).
Дополнительная информация
Работа сдавалась в СибГУТИ в 2010 году, зачтена.
Могу выполнить любые другие задания.
Могу выполнить любые другие задания.
Похожие материалы
Функциональное и логическое программирование. Лабораторная работа 1,2,3.
holm4enko87
: 10 января 2025
Лабораторная работа № 1
Задание
Напишите на языке CLISP программу для работы со списками по заданию. Обязательно использование рекурсии. Ввод всех входных данных должен запрашиваться с клавиатуры в процессе работы программы (функции). Не допускается использование: функционалов, а в теле рекурсивной функции - операторов SET и SETQ.
Преобразуйте одноуровневый список L во вложенный по следующему правилу.
Например, при L=(a s d f g) функция должна вернуть (a (s (d (f (g))))).
Лабораторная р
300 руб.
Лабораторные работы. Функциональное и логическое программирование (СибГУТИ)
Lost
: 15 февраля 2012
Задание к лабораторной работе 1
Для каждого из примеров составить описание функции c рекурсивным её вычислением и вычислить любой её указатель с получением соответствующего ответа.
1. Числа Фибоначчи Fn вычисляются по итерационной формуле: Fn=Fn-1 + Fn-2 . Исходные два значения будут: F0=0 и F1=1. Составить описание функции для вычисления: F2 F3 F4 … и вычислить любой её указатель с привидением соответствующего ответа.
2. Факториал N!=1*2*3…*N вычисляется по итерационной формуле: N!=N*(N-1)! .
70 руб.
Лабораторная работа №2 по "Функциональное и логическое программирование".
Eva
: 3 июня 2011
Лабораторная работа №2 по "Функциональное и логическое программирование".
Задание к Варианту 1
Опpеделите на языке ЛИСП и проверьте работу функции, вычисляющей глубину списка (максимальное количество вложенных скобок).
Например, глубина списка ((((1))) 2 (3 4)) равна 4.
12 руб.
Лабораторная работа №1 по "Функциональное и логическое программирование".
Eva
: 3 июня 2011
Лабораторная работа №1 по "Функциональное и логическое программирование".
Вариант 1.
Задание к варианту 1.
Определите на языке ЛИСП и проверьте работу функции, преобразующей список L в "двойной" список таким образом, чтобы каждый элемент удвоился.
Например, при L=(1 2 3) функция должна возвращать список (1 1 2 2 3 3).
12 руб.
Функциональное и логическое программирование
Михаил18
: 26 сентября 2019
Билет №4
1. На языке Clisp определите функцию, которая меняет местами второй и третий элементы произвольного списка (в теле функции разрешается использовать только следующие встроенные функции: CAR,CDR,CONS,APPEND,LIST,LAST,BUTLASTс одним аргументом,REVERSE).
2. Какое значение получит Xв результате операции сопоставления (унификации) списков [a,b,c,d] и [_,_,_|X] в языке SWI-Prolog?
200 руб.
Функциональное и логическое программирование
Михаил18
: 26 сентября 2019
Напишите на языке SWI-PROLOG программу для работы с базой данных по заданию. Начальная база данных должна храниться в файле. В программе должно присутствовать меню из 5 пунктов, реализующих следующие возможности:
1. просмотр содержимого динамической базы данных (при запуске программы динамическая база данных должна заполняться из файла базы данных только один раз и только в этом пункте);
2. добавления записи в динамическую базу данных (за один вход в этот пункт должна быть возможность добавлени
200 руб.
Функциональное и логическое программирование
Mikola456
: 27 мая 2016
Контрольная работа
Во вложении Word+prolog
Создание базу данных с расписанием движения поездов: номер поезда, пункт назначения, время отправления, время прибытия. Найти номер и время отправления ближайшего по-езда до Москвы. Текущее время вводится с клавиатуры.
700 руб.
Функциональное и логическое программирование
Mikola456
: 27 мая 2016
ЛАБОРАТОРНАЯ РАБОТА №1
Вариант задачи выбирается по последней цифре зачетной книжки. Текст функции сохраняйте в файле. Функция может вызывать вспомогательные функции. В теле функций использование операторов set и setq не допускается!
Опpеделите на языке ЛИСП и проверьте работу функции, осуществляющей циклический сдвиг в списке на n элементов вправо.
Например, для списка (a s d f g) , n = 3 функция должна вернуть (d f g a s) .
ЛАБОРАТОРНАЯ РАБОТА №1
Программы должны быть написаны на языке дв
500 руб.
Другие работы
Контрольная работа. МЕТРОЛОГИЯ, СТАНДАРТИЗАЦИЯ И СЕРТИФИКАЦИЯ. Вариант №70
perebranka
: 16 мая 2013
Задача No 1
С целью определения места повреждения коаксиального кабеля использовался импульсный рефлектометр. В результате проведенных измерений было получено n значений расстояния li до места повреждения. Требуется определить:
1. Наиболее достоверное (среднее арифметическое) значение расстояние до места повреждения кабеля;
2. Среднее квадратическое отклонение (СКО) результата наблюдения;
3. Максимальную погрешность ;
4. Среднюю квадратическую результата измерения (среднего арифметическо
100 руб.
Ответы на вопросы билетов по направлению подготовки: 46.06.01 – Исторические науки и археология
Donbass773
: 29 января 2018
ЭКЗАМЕНАЦИОННЫЙ БИЛЕТ №1
1. Февральская революция 1917 г.
2. Социальная структура кабардинского феодального общества в XVI – XVIII вв.
Председатель приемной комиссии ___________________________________ К.Ф. Дзамихов
«____» __________ 2018 г.
_____________________________________________________________________________
Федеральное государственное бюджетное научное учреждение
«Кабардино-Балкарский институт гуманитарных исследований»
__________________________________________________________
160 руб.
В поисках идентичности
GnobYTEL
: 4 марта 2013
В поисках идентичности В.Я.Фетисов Социология внедряется в нашу высшую школу, оказывая воздействие на социогуманитарную подготовку студентов в целом. Степень этого воздействия определяется тем, насколько она отражает современное состояние социологической науки и, вместе с тем, сопрягается с российской действительностью, обладает высоким теоретическим уровнем и несет в себе ощутимый заряд прагматичности, имеет собственное "лицо" и сочетается с другими
курсами, является доступной для студентов и
15 руб.
Правовая охрана средств индивидуализации товаров
OstVER
: 14 сентября 2012
СОДЕРЖАНИЕ
Введение 3
Глава 1. Правовой режим средств индивидуализации товаров 6
1.1 Средства индивидуализации товаров – объект исключительных прав 6
1.2 Товарный знак как средство индивидуализации товаров 13
Глава 2. Правовая защита средств индивидуализации товаров 21
2.1 Ответственность за нарушение исключительных прав
на средства индивидуализации товаров 21
2.2 Прекращение правовой охраны и защиты
средств индивидуализации то