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

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





результатах. Форма PROG1 повертає значення форми1, PROG2-форми2, PROGN-останньої форми n. p align="justify"> Наприклад:

(progn (setq x 2) (setq у (* 3 х)))

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

Пропозиція COND є основним засобом розгалуження обробки. Структура умовного пропозиції така:


(COND (р 1 а1) (р2 а2) ... (pn an)).


pi - це предикати (вираження-умови, які можуть бути або істинними (Т), або хибними (NIL)). Їх значення обчислюються зліва направо, поки не буде отримано значення В«істинаВ» (Т), потім обчислюється і повертається в якості результату результуюче вираз ai. відповідає 1-му істинному предикату pi. Якщо істинного предиката немає. то значення COND - NIL. Форма ai для відповідного предиката може бути відсутнім (тоді повертається значення цього предиката у разі його істинності), або, навпаки, може бути задана послідовність форм для предиката pi - тоді ці форми обчислюються послідовно і повертається значення останньої. p align="justify"> У наступному прикладі за допомогою пропозиції COND визначена функція, яка встановлює тип виразу:

(defun тип (1)

(cond ((null 1) 'порожньо)

((atom 1) 'атом)

(t 'список)))

Результат: ТИП.

Приклади застосування цієї функції:

(тип '(a b с))

Результат: ПЕРЕЛІК.

(тип (atom '(а т о м)))

Результат: ПУСТО.

Для організації розгалуження можна використовувати і формули IF, WHEN, UNLESS:


(IF умова то-форма інакше-форма),


що еквівалентно


(COND (умова то-форма) (Т інакше форма));

(WHEN умова форма1 форма2 ...),


що еквівалентно


(UNLESS (NOT умова) форма! форма2 ...)

або

(COND (умова форма1 форма2 ...)).


Можна застосовувати і вибирає пропозицію CASE:


(CASE ключ (список ключей1 форма11 форма12 ...)

(список ключей2 форма21 форма22 ...)


У цій формі спочатку обчислюється значення ключовою форми В«ключВ», потім відбувається порівняння з елементами списків ключів і, якщо знайдено значення ключовою форми, обчислюється послідовність відповідних форм, значення останньою з яких повертається як значення всього виразу CASE .

Пропозиції PROG, GO і RETURN аналогічні конструкціям неструктурних мов програмування (типу FORTRAN, Бейсік); користуватися ними не рекомендується.

рекурсією І ЦИКЛ У ПРОГРАМАХ НА Ліспі

У В«чистомуВ» функціональному програмуванні організація повторюваних обчислень повинна відбуватися лише за допомогою умовних пропозицій та визначення рекурсивних, що викликають самих себе, функцій. Розглянемо як приклад функцію, просто визначається через рекурсію, - факторіал n! = 1 * 2 * 3 * ... * (n-1) * n = (n-1)! т n (0! = 1 за визначенням):


(defun! (n) (if (= п 0) 1 (* п (! (. п 1))))).


Ім'я функції - "!", її аргументом є змінна n. Лямбда-вираз, що визначає функцію, являє собою умовну if-форму, яка у разі n = 0 повертає 1, а в іншому випадку обчислює твір n і результату виклику цієї ж функції! для аргументу n-1.

Приклад виклику цієї функції:

(! 5)

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

У разі повторюваних обчислень в Ліспі можуть бути використані не тільки рекурсивні функції, а й відомі з процедурних мов цикли. Найбільш загальним циклічним пропозицією в Ліспі є DO, що має таку форму:


(DO ((nepi знач! шаг1) (Пер2 знач2 крок 2) ...)

(умова-закінчення форма11 форма12 ...)

форма21 форма22 ...)


Обчислення пропозиції DO починається з привласнення змінним пep1, Пер2, ... початкових значень знач1, знач2,. . . відповідно; потім обчислюється умова закінчення і, якщо воно істинне, послідовно обчислюються форми форма1i, і значення останньої повертається як результат DO-пропозиції. В іншому випадку обчислюються форми форма2i з тіла пропозиції DO, потім значення змінних пep1, Пер2,. . . змінюються на величину кроку шаг1, КРОК 2, ... і все повторюється.

Для прикладу за допомогою пропозиції DO визначимо функцію expt, яка обчислює n-ю ступінь числа х (n - ...


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





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

  • Реферат на тему: Еластичність попиту і пропозиції та її значення для підприємницької практик ...
  • Реферат на тему: Значення оцінки еластичності попиту та пропозиції для підприємницької практ ...
  • Реферат на тему: Багатство людського суспільства як результат і умова соціально-економічного ...
  • Реферат на тему: Створення програми для обчислення значення функції
  • Реферат на тему: Поняття алгоритму. Обчислення значення функції