Функциональное и логическое программирование. Лабы 1-5. Вариант 02
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Необходимые программы
Работа представляет собой 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
Файл содержит сведения о сотрудниках учреждения в виде: фамилия имя отчество (сведения о каждом сотруднике размещаются на новой строке). Запишите эти сведения в другой файл по образцу: фамилия и.о.
Например, строка “Иванов Петр Николаевич” преобразуется в строку “Иванов П.Н.”.
Дополнительная информация
Уважаемый студент, дистанционного обучения,
Оценена Ваша работа по предмету: Функциональное и логическое программирование
Вид работы: Лабораторная работа 1-5
Оценка:Зачет
Дата оценки: 21.10.2017
Рецензия:Уважаемый,
Галкина Марина Юрьевна
Оценена Ваша работа по предмету: Функциональное и логическое программирование
Вид работы: Лабораторная работа 1-5
Оценка:Зачет
Дата оценки: 21.10.2017
Рецензия:Уважаемый,
Галкина Марина Юрьевна
Похожие материалы
Контрольная работа по дисциплине «Функциональное и логическое программирование». Вариант №02.
teacher-sib
: 23 января 2019
Задание
Реализовать на языке SWI-PROLOG программу для работы с базой данных об итогах сессии по 4 дисциплинам студентов определенной группы. Начальная база данных должна храниться в файле. В программе должно присутствовать меню из 5 пунктов, реализующих следующие возможности:
1. просмотр содержимого динамической базы данных (при запуске программы динамическая база данных должна заполняться из файла базы данных только один раз и только в этом пункте);
2. добавления записи в динамическую базу да
600 руб.
Контрольная работа По дисциплине: Функциональное и логическое программирование. Вариант № 02
Багдат
: 22 января 2018
Вариант задачи выбирается по последней цифре пароля. Программы должны быть написаны на языке двух языках: Лисп и Пролог. В программе на Прологе исходные данные должны вводиться с клавиатуры, цель - внутренняя
Вариант 2
Удалите из списка перед каждым вхождением X один элемент, если такой имеется и отличен от X.
Например: На Лиспе при x=1 и списке (1 2 1 1 3) результатом будет список (1 1 1 3).
43 руб.
Функциональное и логическое программирование
Михаил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 руб.
Функциональное и логическое программирование
alfFRED
: 25 июня 2013
Введение.
Постановка задачи.
Математические и алгоритмические основы решения задачи.
Функциональные модели и блок-схемы решения задачи.
Программная реализация решения задачи.
Пример выполнения программы.
Заключение.
Список использованных источников и литературы.
10 руб.
Функциональное и логическое программирование
piligrim-24
: 17 января 2012
Зачетное задание по дисциплине «Функциональное и логическое программирование»
Билет №11
1. На языке Лисп составьте композицию из функций CAR и CDR, для которой результатом применения этой композиции к списку ((1 (2 (3))) 4 (5)) будет 3.
2. Какое значение получит X в результате операции сопоставления (унификации) списков [a,b,c,d,e] и [_|X] в Прологе?
50 руб.
Другие работы
Зачетная работа по предмету. Схемотехника телекоммуникационных устройств (часть 1-я). Билет №3
ZhmurovaUlia
: 18 марта 2018
Билет No3
1. Поясните отличие линейных искажений от нелинейных. Каковы причины их появления? Приведите примеры линейных и нелинейных искажений (во временной и частотной области) при подаче на вход гармонического сигнала. Как количественно оценить линейные и нелинейные искажения?
2. Каким должен быть коэффициент усиления по мощности выходного каскада трехкаскадного усилителя, если входная мощность сигнала 100 мкВт обеспечивает выходное напряжение 4В на нагрузке 2 Ом, коэффициенты усиления по мощн
130 руб.
Онлайн Тест 9 по дисциплине: Элементная база телекоммуникационных систем.
IT-STUDHELP
: 29 сентября 2023
Вопрос №1
Уровень максимальной мощности, на котором измеряется ширина спектра излучения СИДа, равен...
0,2
0,5
0,707
0,9
Нет правильного ответа
Вопрос №2
Какое соединение конденсаторов эффективно увеличивает толщину диэлектрика?
Параллельное
Последовательное
Соединение не влияет на толщину диэлектрика
Нет правильного ответа
Вопрос №3
Укажите полярность напряжения на эмиттере и коллекторе транзистора типа p-n-p.
минус, плюс
плюс, минус
минус, минус
нет правильного ответа
Вопрос №4
480 руб.
Теплотехника СибАДИ 2009 Задача 5 Вариант 13
Z24
: 14 декабря 2025
Одноцилиндровый одноступенчатый поршневой компрессор сжимает воздух от атмосферного давления р1=0,1 МПа до требуемого давления р2. Определить эффективную мощность привода компрессора и необходимую мощность электродвигателя с запасом 10% на перегрузку, если диаметр цилиндра D (м), ход поршня S (м), частота вращения вала n (об/c), относительный объем вредного пространства δ=0,05, показатель политропы расширения остающегося во вредном объеме газа m, коэффициент, учитывающий, уменьшение давления газ
150 руб.
Лабораторная работа №2 по предмету «Эконометрика»
ДО Сибгути
: 25 сентября 2013
Практическое занятие №2. «Применение Eviews при построении и анализе линейной однофакторной модели регрессии»
Пример 2. Имеются следующие данные по 10 фермерским хозяйствам области:
№ п\п 1 2 3 4 5 6 7 8 9 10
Урожайность зерновых ц\га 15 12 17 21 25 20 24 14 23 13
Внесено удобрений на 1 га посевов, кг 4,0 2,5 5,0 5,8 7,5 5,7 7,0 3,0 6,0 3,5
1. Создать файл с исходными данными в среде Excel (файл example_02.xls).
2.Осуществить импорт исходных данных в Eviews.
3. Создать workfile (рабочий файл).
100 руб.