Функциональное и логическое программирование. Лабы 1-5. Вариант 02

Состав работы

material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon lab1.lsp
material.view.file_icon Лабораторная работа № 1.doc
material.view.file_icon
material.view.file_icon lab2.lsp
material.view.file_icon Лабораторная работа № 2.doc
material.view.file_icon
material.view.file_icon lab3.lsp
material.view.file_icon Лабораторная работа № 3.doc
material.view.file_icon
material.view.file_icon LAB4.EXE
material.view.file_icon LAB4.OBJ
material.view.file_icon lab4.pro
material.view.file_icon LAB4.SYM
material.view.file_icon Лабораторная работа № 4.doc
material.view.file_icon
material.view.file_icon in.txt
material.view.file_icon LAB5.EXE
material.view.file_icon LAB5.OBJ
material.view.file_icon lab5.pro
material.view.file_icon LAB5.SYM
material.view.file_icon OUT.TXT
material.view.file_icon Лабораторная работа № 5.doc
Работа представляет собой 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

Файл содержит сведения о сотрудниках учреждения в виде: фамилия имя отчество (сведения о каждом сотруднике размещаются на новой строке). Запишите эти сведения в другой файл по образцу: фамилия и.о.

Например, строка “Иванов Петр Николаевич” преобразуется в строку “Иванов П.Н.”.

Дополнительная информация

Уважаемый студент, дистанционного обучения,
Оценена Ваша работа по предмету: Функциональное и логическое программирование
Вид работы: Лабораторная работа 1-5
Оценка:Зачет
Дата оценки: 21.10.2017
Рецензия:Уважаемый,

Галкина Марина Юрьевна
Контрольная работа по дисциплине «Функциональное и логическое программирование». Вариант №02.
Задание Реализовать на языке SWI-PROLOG программу для работы с базой данных об итогах сессии по 4 дисциплинам студентов определенной группы. Начальная база данных должна храниться в файле. В программе должно присутствовать меню из 5 пунктов, реализующих следующие возможности: 1. просмотр содержимого динамической базы данных (при запуске программы динамическая база данных должна заполняться из файла базы данных только один раз и только в этом пункте); 2. добавления записи в динамическую базу да
User teacher-sib : 23 января 2019
600 руб.
promo
Контрольная работа По дисциплине: Функциональное и логическое программирование. Вариант № 02
Вариант задачи выбирается по последней цифре пароля. Программы должны быть написаны на языке двух языках: Лисп и Пролог. В программе на Прологе исходные данные должны вводиться с клавиатуры, цель - внутренняя Вариант 2 Удалите из списка перед каждым вхождением X один элемент, если такой имеется и отличен от X. Например: На Лиспе при x=1 и списке (1 2 1 1 3) результатом будет список (1 1 1 3).
User Багдат : 22 января 2018
43 руб.
Контрольная работа По дисциплине: Функциональное и логическое программирование. Вариант № 02
Лабораторная работа №3 по дисциплине «Функциональное и логическое программирование». Вариант №02.
Лабораторная работа №3 Работа со строками и файлами в языке SWI-PROLOG Условие задачи Напишите на языке SWI-PROLOG программу для работы с текстовым файлом, состоящим из нескольких строк. При преобразовании файла должны быть сохранены переводы строк исходного файла. Вариант 2. Определите, совпадают ли два текстовых файла. Если нет, то получите номер первой строки и позиции первого символа в этой строке, в котором файлы отличаются между собой.
User teacher-sib : 26 мая 2019
250 руб.
promo
Функциональное и логическое программирование
Билет №4 1. На языке Clisp определите функцию, которая меняет местами второй и третий элементы произвольного списка (в теле функции разрешается использовать только следующие встроенные функции: CAR,CDR,CONS,APPEND,LIST,LAST,BUTLASTс одним аргументом,REVERSE). 2. Какое значение получит Xв результате операции сопоставления (унификации) списков [a,b,c,d] и [_,_,_|X] в языке SWI-Prolog?
User Михаил18 : 26 сентября 2019
200 руб.
Функциональное и логическое программирование
Напишите на языке SWI-PROLOG программу для работы с базой данных по заданию. Начальная база данных должна храниться в файле. В программе должно присутствовать меню из 5 пунктов, реализующих следующие возможности: 1. просмотр содержимого динамической базы данных (при запуске программы динамическая база данных должна заполняться из файла базы данных только один раз и только в этом пункте); 2. добавления записи в динамическую базу данных (за один вход в этот пункт должна быть возможность добавлени
User Михаил18 : 26 сентября 2019
200 руб.
Функциональное и логическое программирование
Контрольная работа Во вложении Word+prolog Создание базу данных с расписанием движения поездов: номер поезда, пункт назначения, время отправления, время прибытия. Найти номер и время отправления ближайшего по-езда до Москвы. Текущее время вводится с клавиатуры.
User Mikola456 : 27 мая 2016
700 руб.
Функциональное и логическое программирование
ЛАБОРАТОРНАЯ РАБОТА №1 Вариант задачи выбирается по последней цифре зачетной книжки. Текст функции сохраняйте в файле. Функция может вызывать вспомогательные функции. В теле функций использование операторов set и setq не допускается! Опpеделите на языке ЛИСП и проверьте работу функции, осуществляющей циклический сдвиг в списке на n элементов вправо. Например, для списка (a s d f g) , n = 3 функция должна вернуть (d f g a s) . ЛАБОРАТОРНАЯ РАБОТА №1 Программы должны быть написаны на языке дв
User Mikola456 : 27 мая 2016
500 руб.
Функциональное и логическое программирование
Введение. Постановка задачи. Математические и алгоритмические основы решения задачи. Функциональные модели и блок-схемы решения задачи. Программная реализация решения задачи. Пример выполнения программы. Заключение. Список использованных источников и литературы.
User alfFRED : 25 июня 2013
10 руб.
. Теория отраслевых рынков.
Модуль 3 по главе 3 1. __________ должна обладать важнейшими свойствами объекта, хотя является лишь его упрощенным представлением. Выберите один ответ: Разработка управленческого решения Управленческая задача Модель Организация 2.Главное преимущество использования моделей и моделирования в процессе принятия управленческого решения: Выберите один ответ: очень просто реализовать открывает широкое поле для экспериментальной деятельности учитывает все воздействующие на объект факторы уменьш
User studypro2 : 15 октября 2017
250 руб.
Гидравлика и нефтегазовая гидромеханика ТОГУ Задача 46 Вариант 4
Определить силу, с которой воздушный поток, движущийся со скоростью V, стремится опрокинуть цилиндрическую дымовую трубу диаметром Д и высотой Н. Удельный вес воздуха γ.
User Z24 : 28 ноября 2025
150 руб.
Гидравлика и нефтегазовая гидромеханика ТОГУ Задача 46 Вариант 4
Архитектура информационных систем. Ответы Синергия. 2022
В файле более 40 вопросов Вы покупаете ответы на вопросы которые указаны ниже Скорость считывания данных из ячейки оперативной памяти измеряется … в герцах в байтах в секундах в ваттах Количество приводов CD-R и накопителей на жестких магнитных дисках (НЖМД) при установке в системный блок … ограничено количеством соответствующих отсеков системного блока ограничено количеством разъемов блока питания для подключения этих устройств ограничено количеством соответствующих отсеков системного бл
User KingSynergy : 21 марта 2022
300 руб.
Амортизатор МЧ00.78.00.00
Амортизатор МЧ00.78.00.00 сборочный чертеж Амортизатор МЧ00.78.00.00 спецификация Корпус МЧ00.78.00.01 Муфта МЧ00.78.00.02 Упор МЧ00.78.00.03 Крышка МЧ00.78.00.04 Шток МЧ00.78.00.05 Втулка МЧ00.78.00.06 Пружина МЧ00.78.00.07 Амортизатор служит для поглощения ударных нагрузок на манипулятор в устройствах для механической подачи и поворота поковок на больших прессах и молотах. Корпус поз. 1 присоединен болтами поз. 8 к крышке поз. 4, которая также болтами крепится к манипулятору. Сжатие пружины п
User coolns : 10 декабря 2019
500 руб.
Амортизатор МЧ00.78.00.00 promo
up Наверх