Лабораторная работа. Функциональное и логическое программирование
Состав работы
|
|
|
|
|
|
|
|
|
|
Работа представляет собой 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 руб.
Лабораторная работа №1 по "Функциональное и логическое программирование".
Eva
: 3 июня 2011
Лабораторная работа №1 по "Функциональное и логическое программирование".
Вариант 1.
Задание к варианту 1.
Определите на языке ЛИСП и проверьте работу функции, преобразующей список L в "двойной" список таким образом, чтобы каждый элемент удвоился.
Например, при L=(1 2 3) функция должна возвращать список (1 1 2 2 3 3).
12 руб.
Лабораторная работа №2 по "Функциональное и логическое программирование".
Eva
: 3 июня 2011
Лабораторная работа №2 по "Функциональное и логическое программирование".
Задание к Варианту 1
Опpеделите на языке ЛИСП и проверьте работу функции, вычисляющей глубину списка (максимальное количество вложенных скобок).
Например, глубина списка ((((1))) 2 (3 4)) равна 4.
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 руб.
Другие работы
Реализация и анализ ЦФ с КИХ
OstVER
: 14 ноября 2012
1. Задание
Разработать цифровой согласованный фильтр (СФ) с конечной импульсной характеристикой и получить следующие его характеристики:
- спектр входного сигнала;
- спектральную (амплитудно-частотную) характеристику окна;
- АЧХ и ИХ фильтра;
- отклик фильтра на заданный сигнал;
- спектр выходного сигнала.
Проанализировать полученные результаты.
Параметры фильтра (Вариант №16):
Тип фильтра: согласованный с заданным сигналом фильтр;
Тип окна: Ханна;
Тип сигнала: прямоугольный радиоимпульс с
5 руб.
Технология приготовления салата Весна, рассольника ленинградского, биточков с рисом отварным, какао; Технология приготовления пряников Медовых
GnobYTEL
: 24 августа 2012
В неё включены: содержание, меню, раскладка обеденного меню и кондитерского изделия, товароведная характеристика сырья, технология приготовления, требования к качеству, условия и сроки хранения и транспортировки, технологические схемы.
1. ПРОФЕССИЯ ПОВАР
1.1 Введение
1.2 Меню
1.3 Раскладка обеденного меню
1.4 Товароведная характеристика сырья
1.5 План технологических операций
1.6 Технология приготовления блюд
1.7 Оформление и подача блюд
1.8 Бракераж блюд
1.9 Санитарные требования к готовым б
20 руб.
Разветвитель на два выхода 01-00
coolns
: 6 августа 2019
Разветвитель на два выхода сборочный чертеж
Разветвитель на два выхода чертежи
Разветвитель на два выхода деталирование
Разветвитель на два выхода скачать
Разветвитель на два выхода 3д модель
Разветвитель на два выхода служит для изменения направления тока высокой частоты и распределения его в узлах радиоаппаратуры.
В корпусе 1, являющемся составным из двух частей, размещены штепсель 3, сопротивления и гнезда 6. Общим выводом разветвителя является штепсель 3. Ток высокой частоты, проходя через
600 руб.
Архитектура вычислительных систем
IT-STUDHELP
: 6 февраля 2022
Онлайн-Тест по дисциплине:
Вопрос №1
В рамках одной архитектуры число стадий конвейера:
одинаково для всех команд
может отличаться, например, быть больше для команд обработки чисел с плавающей запятой
может заметно отличаться для всех основных групп команд
Вопрос №2
Когда в конвейерной архитектуре у двух одновременно исполняемых инструкций возникает необходимость использовать один и тот же аппаратный блок
они продолжают параллельное исполнение и пользуются этим блоком в режиме разделения в
600 руб.