- •Міністерство науки і освіти України
- •Київська державна академія водного транспорту
- •Ім. Гетьмана Петра Конашевича-Сагайдачного
- •Ме тодичні вказівки
- •1 Керуючі структури в мові lisp
- •2 Робота із списками
- •3 Графічний ввод-вивід.
- •4 Функціонали і макроси.
- •5 Метод програмування, що управляється даними
- •Література
3 Графічний ввод-вивід.
Мета виконання завдання:
практичне засвоєння техніки програмування графічного вооду-виводу.
Теоретичний матеріал:
Розділ 2.7 Функції вводу-виводу [3]
Завдання №3 для виконання лабораторних робіт
Побудувати графіки в графічному режимі
y=x2 -3x+2
y=| 2x2 -x+1|
y=x2 -|x|+3
y=1/(x2 -3x+2)
y=ln(x2 -3x+2)
y=ln(sinx)
y=cos(lnx)
y=e^(1/sinx)
y=2cos(2x+1.57)
y=2^cosx
y=sin(arcsinx)
y=arcsin(cosx)
y=sinx/(x+0.5)
y=x+e^x
y=6sinx/(2+cosx)
y=(sinx)^4-(cosx)^3
y=x^3/(3-x^2)
y=(x-3)^2/(x+1)^2
y=lnx/sqrtx
y=(2-x)^3/(3-x)^2
y=2^(x^2-2x)
y=arcsin(sinx)
y=lnx/cosx
y=x^2/sinx
y=sinx/cosx
y=tgx/lnx
y=(cosx-sinx)/x
y=x/(lnx-cosx)
y=(x^2-x^3)/cosx
y=(x^2+x^3)/lnx
4 Функціонали і макроси.
Функціонали і макроси займають особливе місце в мові LISP і є одними із основних способів для конструювання програм.
Мета виконання завдання:
практичне засвоєння техніки програмування із застосуванням функціоналів і макросів.
Теоретичний матеріал:
Розділ 2.8 Функціонали і макроси. [3]
Завдання №4 для виконання лабораторних робіт
За допомогою макроса створити нову синтаксичну форму:
(ЯКЩО умова ТО (вислів1) (вислів2) … (вислівN))
Вислови виконуються при умові=Т
(ЯКЩО умова ТО (вислів_при_умові=Т) ІНАКШЕ (вислів1) (вислів2) … (вислівN))
Вислови 1-N виконуються при умові=NIL
(ЯКЩО вислів-число (вислів1) (вислів2) … (вислівN))
Вислови 1-N виконуються при число>0
(ЯКЩО вислів-число (вислів при число>0) (вислів1) (вислів2) … (вислівN))
Вислови 1-N виконуються при число<0
(ЯКЩО вислів-число (вислів при число>0) (вислів при число=0) (вислів1) (вислів2) … (вислівN))
Вислови 1-N виконуються при число<0
(ВИКОНАТИ_ПО_КЛЮЧУ вислів-ключ (ключ1 вислів1) (ключ2 вислів2)…(ключN вислів N))
Виконується той вислів, ключ якого співпадає з висловом-ключем
(ВИКОНАТИ_ПО_УМОВІ (умова1 вислів1) (умова2 вислів2)… (умоваN
вислів N))
Виконується той вислів, умова якого повертає Т
(ДО_ТИХ_ПІР_ДОКИ умова ВИКОНУВАТИ (вислів1) (вислів2) … (вислівN))
Виконуються вислови до тих пір, доки умова повертає Т
(ВИКОНАТИ функція (список1) (список2)…(списокN))
Виконати функцію над списками аналогічно MAPCAR і повернути новий список
(ВИКОНАТИ функція (список1) (список2)…(списокN))
Виконати функцію над списками аналогічно MAPLIST і повернути новий список
(ЗФОРМУВАТИ (вираз-defun) І_ВИКОНАТИ (імя-defun аргументи))
(ПЕРЕМНОЖИТИ (список1) (список2)…(списокN))
Перемножити почленно списки та повернути новий список
(СТВОРИТИ_A-LIST (список ключів) (вираз1) (вираз2)…(виразN))
Створити асоціативний список із заданими ключами і обєктами-виразами
(ВЕКТОРНЕ_МНОЖЕННЯ (вектор1) (вектор2)…(векторN))
(ВЕКТОРНИЙ_ДОДАТОК (вектор1) (вектор2)…(векторN))
Замість префіксної форми створити постфіксну
(аргумент1 аргумент2…аргументN функція)
Створити функціонал аналогічно FUNCAL замінивши FUNCAL українським словом.
(ФУНКЦІОНАЛ функція арг1 арг2 … аргN)
(ВИКОНУВАТИ змінна=начальне_значення змінна=кінцеве_значення (вислів1) (вислів2) … (вислівN))
Змінна змінюється на +1
((ВИКОНУВАТИ+ змінна=начальне_значення змінна=кінцеве_значення крок (вислів1) (вислів2) … (вислівN))
Змінна змінюється на крок
Створити форму COND, замінивши COND українським словом.
Створити форму LOOP, замінивши LOOP українським словом
(МАТРИЦЯ (список1) (список2)…(списокN))
Зібрати всі списки в один ((список1) (список2)…(списокN))
(МАТРИЦЯ_1 (список1) (список2)…(списокN))
Зібрати всі списки в один ((голова1 голова2…) (2-й_елемент1 2-й_елемент2…)…)
(ВИКОНАТИ вислів-число (вислів1) (вислів2) … (вислівN))
Виконує той вислів, порядковий номер якого співпадає з висловом-числом
(ВИБРАТИ (вислів1) (вислів2) … (вислівN))
Виконати той вислів, на який покаже генератор випадкових чисел.
Створити форму MAPCAR, замінивши MAPCAR українським словом.
Створити форму MAPLIST, замінивши MAPLIST українським словом.
(ФУНКЦІОНАЛ+ (список функцій) арг1 арг2 …)
Виконується та функція, на яку покаже генератор випадкових чисел.
(ФУНКЦІОНАЛ++ вислів-число (список функцій) арг1 арг2 …)
Виконується та функція, на яку покаже вислів-число
(ФУНКЦІОНАЛ-ВЛАСТИВОСТІ функція ключ арг1 арг2 …)
Виконується функція з властивостями аргументів із заданим ключем.