Функциональное и логическое программирование. Лабы 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
Функциональное и логическое программирование
Билет №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 руб.
Функциональное и логическое программирование
Зачетное задание по дисциплине «Функциональное и логическое программирование» Билет №11 1. На языке Лисп составьте композицию из функций CAR и CDR, для которой результатом применения этой композиции к списку ((1 (2 (3))) 4 (5)) будет 3. 2. Какое значение получит X в результате операции сопоставления (унификации) списков [a,b,c,d,e] и [_|X] в Прологе?
User piligrim-24 : 17 января 2012
50 руб.
Метрология, стандартизация и сертификация. Лабораторная работа 3.4. Измерение напряжения электрических сигналов. Вариант № 19
1. Цель и порядок выполнения работы 2. Сведения о метрологических характеристиках использованных средств измерений 3. Схема измерения 4. Расчётные формулы для обработки результатов наблюдений 5. Полностью заполненные таблицы отчета (см. табл. 5.2, 5.3 и 5.4), а также примеры расчетов, выполнявшихся при заполнении таблиц 6. Графики зависимости показаний вольтметров различных систем от частоты измеряемого напряжения 7. Анализ полученных данных и вывод по результатам проделанной работы 8. Список
User nik200511 : 13 марта 2014
86 руб.
Разработка технологической последовательности по изготовлению женской блузы
Введение. Техническое задание. Технический проект. Выводы. Список литературы.
User DocentMark : 10 сентября 2015
35 руб.
Контрольная работа по дисциплине: «Бухгалтерский управленческий учет». Вариант №6
Контрольная работа по дисциплине: «Бухгалтерский управленческий учет» Вариант: 6 Задача 1. Определить величину постоянных затрат на электроэнергию при следующих исходных данных: Месяц Объем производства по вариантам, тыс. шт. Расходы на электроэнергию, тыс. руб. Вариант 6 Вариант 6 1 19 501 2 18 495 3 19 501 4 21 514 5 22 540 6 19 501 7 17 490 8 18 495 9 20 514 10 21 514 11 21 540 12 22 550 Задача 2. Предприятие получило заказ дополнительно произвести М единиц изделий и реализовать их по цене
User GMX9536 : 12 ноября 2015
50 руб.
ГОСТ 3560-73 Лента стальная упаковочная. Технические условия
Настоящий стандарт распространяется на стальную холоднокатаную ленту из низкоуглеродистой стали, предназначенную для упаковки. Переиздание 01.01.2003 с изм. 1;2;3;4
User evelin : 28 июня 2013
4 руб.
up Наверх