Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Книга, учебник » Основи інформаційних технологій

Реферат Основи інформаційних технологій





ж (з 1979 по 1982)

(МДУ м. Москва (з 1982 по 1984)) (спеціальність

(технічна кібернетика)

(програмування )

(стаж (з 1984 по 1997)

)

ФУНКЦІЇ

Функції в Ліспі аналогічно математичних функцій ставлять у відповідність елементам з однієї безлічі - визначення (аргументів) - єдиний елемент з безлічі значень. У програмах слід розрізняти визначення функцій і виклик (застосування) функції. p align="justify"> У мові Лісп прийнята единообразная префіксная форма запису, при якій як ім'я функції або дії, так і аргументи записуються всередині дужок:


(f x)

(gxy) (сумма_квадратов 2 3).


Аналогічно записуються і арифметичні дії:


(+ х у)

(* x (+ yz))

(+ (^ х х) (+ у у)).


Визначення функцій та їх обчислення в Ліспі засноване на лямбда-численні Черча . У 1-обчисленні Черча функція записується у вигляді


(х1, х2, ..., xn). fn


У Ліспі 1-вираз має вигляд (LAMBDA (xl, x2, ..., xn). fn).

Символ LAMBDA означає, що ми маємо справу з визначенням функції. Символи xi є формальними параметрами, вони утворюють список, званий лямбда-списком; fn - це тіло функції, яка може мати довільну форму, допускаемую інтерпретатором Ліспу. Тілом функції може бути, наприклад, константа або композиція з викликів функцій. Функцію, яка обчислює суму квадратів двох чисел, можна, наприклад, визначити так:


(lambda (xy) (+ (* xx) (* yy))).


Лямбда-вираз - це безіменна функція, яка може бути використана для зв'язування формальних та фактичних параметрів на час обчислень. Виклик такої функції відбувається за формою


(лямбда-вираз а1 а2 ... an)


Тут ai - фактичні параметри, з якими відбувається обчислення.

Наприклад

((lambda (х у) (+ (* х х) (* у у))) 4 березень).

Результат: 25.

Визначити нову функцію і дати їй ім'я для наступних дзвінків можна за допомогою функції DEFUN (define function):


(DEFUN ім'я лямбда-список тіло).

DEFUN з'єднує символ з лямбда-виразом, і символ починає представляти (іменувати) визначені цим лямбда-виразом обчислення. Значенням цієї форми є ім'я нової функції:


(defun sumsquare (х у) (+ (* х х) (* у у))).


Результат: sumsquare.

Виклик (застосування) цієї функції:

(sumsquare 34)

Результат: 25.

Визначення функції задається списком, тому його можна модифікувати в ході виконання програми. Крім того, деякий символ може бути і ім'ям функції і змінної. p align="justify"> У Ліспі передача параметрів відбувається за значенням. Формальні параметри функцій є статичними і локальними, тобто дійсні тільки всередині тієї форми, в якій вони визначені.

Основу для побудови різних функцій утворює набір невеликого числа примітивних вбудованих функцій. Базовими функціями обробки S-виразів є функції


CAR, CDR, CONS, ATOM, EQ, EQL, =


та інші, зміст яких відображено у табл. 7.1


Таблиця 7.1

Базові функції обробки S-виразів

ФункцияВызовДействиеПример іспользованіяCAR (CAR список) Повертає Головна частина списку - його 1-й елемент (CAR (1234)) Результат: 1CDR (CDR список) Повертає хвостову частину списку-все. крім 1-го елемента (CDR (! 234)) Результат: (2 3 4) CONS (CONS S-вираз перелік) Будує список з переданих як аргументів голови і хвоста (CONS I (2 3 4)) Результат: (1234 ) ATOM (ATOMS-вираз -) Предикат; перевіряє, чи є аргумент атомом, і повертає або t (істина), або Nil або ("(неправда) (ATOM A): t (ATOM (1 2 3)): NilEQ (EQ символ Символ) Предикат: перевіряє тотожність символів-аргументів, непридатний для чисел (EQ AA): (EQ X (CAR (XYZ))): t tEQL (EQL число число) Предикат, перевіряє тотожність чисел одного типу (EQL 3.0 3.0 ): t = (= число число) Предикат, перевіряє тотожність чисел різних типів (= 30.3el): tEQUAL (EQUAL число або список число або список) Аналогічна EQL, але, крім того, перевіряє ідентичність списків (EQUAL (xyz) (xyz )): tEQUALP (EQUALP об'єкт об'єкт) Перевірка найбільш загального равенстваNULL (NULL перелік) Пе...


Назад | сторінка 38 з 56 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Докладне вивчення роботи фінансової функції ДАТАКУПОНДО, яка повертає число ...
  • Реферат на тему: Дослідження функції. Обчислення похідних функції
  • Реферат на тему: Функції, склад, особливості та види грошей і сутність, функції та роль банк ...
  • Реферат на тему: Дослідження функції зовнішнього дихання. Дослідження секреторної функції ш ...
  • Реферат на тему: Створення програми для обчислення значення функції