Функциональное и логическое программирование. Лабы 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 руб.
Экология
Вариант 23. Вопрос 7. Почему происходит изменение газового состава атмосферы и как распределяется загрязнение над поверхностью Земли? 3 Вопрос 23. Какова ответственность за экологические правонарушения? 8 Задача 1. Расчет влияния электромагнитных полей на человека 10 Задача 2. Анализ промышленного загрязнения озера. 16 Список литературы 20
User gugych : 22 января 2015
500 руб.
Теплотехника Часть 1 Теплопередача Задача 30 Вариант 4
В пароводяном теплообменнике вода нагревается насыщенным паром (при р=0,6 МПа) от температуры t′ω=20 ºC до t″ω1=50 ºC. В результате интенсификации теплообмена температура подогрева воды повысилась до t″ω2 при неизменном расходе G=1 кг/c. Определить, во сколько раз увеличился коэффициент теплопередачи.
User Z24 : 14 октября 2025
180 руб.
Теплотехника Часть 1 Теплопередача Задача 30 Вариант 4
Автомобиль пожарный АЦ 3,2-40 на шасси КАМАЗ-4308 чертеж
Чертеж пожарной автоцистерны в автокад, нанокад и еще сохранен в пдф Автомобиль пожарный АЦ 3,2-40 на шасси КАМАЗ-4308
User Laguz : 1 августа 2024
120 руб.
Автомобиль пожарный АЦ 3,2-40 на шасси КАМАЗ-4308 чертеж
Векселя. Коносамент
Содержание Введение 1. Теоретическая часть 1.1 Векселя 1.2 Коносамент 2. Практическая часть 2.1 Решение задачи по теме "Акции" 2.2 Решение задачи по теме "Облигации" 2.3 Решение задачи по теме "Векселя" Заключение Библиографический список
User GnobYTEL : 6 ноября 2012
up Наверх