Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции по информатике.doc
Скачиваний:
11
Добавлен:
23.09.2019
Размер:
1.46 Mб
Скачать

Императивное программирование

Императивное программирование – это технология программирования, характеризующаяся принципом последовательного изменения состояния вычислителя пошаговым образом. При этом управление изменениями полностью определено и полностью контролируется. Императивный язык программирования – это тоже самое, что и процедурно-ориентированный язык программирования. Процедурно-ориентированный язык программирования - язык программирования высокого уровня, в основу которого положен принцип описания (последовательности) действий, позволяющей решить поставленную задачу. Обычно процедурно-ориентированные языки задают программы, как совокупности процедур или программ.

Декларативный язык программирования

(От лат.Declaratio – объявление)

Декларативный язык программирования - язык программирования высокого уровня, построенный: - на описании данных; и - на описании искомого результата.

Декларативные языки подразделяются на функциональные и логические языки.

Тексты программ на функциональных языках программирования описывают "как решить задачу", но не предписывают последовательность действий для решения. (языки F# и O'Caml )

Функциональный (аппликативный) язык программирования – язык программирования, позволяющий задавать программу в виде совокупности определений функций.

В функциональных языках программирования: - функции обмениваются между собой данными без использования промежуточных переменных и присваиваний;

- переменные, однажды получив значение, никогда его не изменят;

- циклы заменяются аппаратом рекурсивных функций.

Самым главным отличием функциональных языков является отсутствие

оператора присваивания

Язык программирования Лисп

LISP language

От англ.LISt Processing - обработка списков

Язык программирования Лисп - аппликативный язык программирования.

- он относится к декларативным языкам функционального типа; - предназначен для обработки символьных данных, представленных в виде списков.

Основой языка являются функции и рекурсивные построения.

Функциональные языки применяются преимущественно для научных вычислений, а также при реализации особенно сложных алгоритмов и обработке чрезвычайно запутанных структур данных

Логический язык программирования - язык программирования, позволяющий выполнить описание проблемы в терминах фактов и логических формул, а собственно решение проблемы выполняет система с помощью механизмов логического вывода.

PROLOG language

От англ.PROgramming in LOGic

Язык программирования Пролог

Язык программирования Пролог - язык логического программирования, программа на котором состоит:

- из логических утверждений, образующих базу данных; и - из правила вывода новых утверждений из известных ранее.

Языки программирования баз данных

Эта группа языков отличается от алгоритмических языков прежде всего решаемыми задачами. База данных – это файл (или группа файлов), представляющий собой упорядоченный набор записей, имеющих единообразную структуру и организованных по единому шаблону (как правило, в табличном виде). Базы данных чаще всего бывают реляционные (таблично организованные), иерархические, сетевые, объектно-ориентированные, многомерные, дедуктивные. Реляционная база данных может состоять из нескольких таблиц. Удобно хранить в базах данных различные сведения из справочников, картотек, журналов бухгалтерского учета и т. д.

При работе с базами данных чаще всего требуется выполнять следующие операции:

  • создание/модификация свойств/удаление таблиц в базе данных;

  • поиск, отбор, сортировка информации по запросам пользователей;

  • добавление новых записей;

  • модификация новых записей;

  • удаление существующих записей.

Первые базы данных появились очень давно, как только появилась потребность в обработке больших массивов информации и выборке групп записей по определенным признакам. Для этого был создан структурированный язык запросов SQL (Structured Query Language). Он основан на мощной математической теории и позволяет выполнять эффективную обработку баз данных, манипулируя не отдельными записями, а группами записей.

Для управления большими базами данных и их эффективной обработки разработаны СУБД (Системы Управления Базами Данных). Практически в каждой СУБД помимо поддержки языка SQL имеется также свой уникальный язык, ориентированный на особенности этой СУБД и не переносимый на другие системы. Сегодня в мире насчитывается пять ведущих производителей СУБД: Microsoft (SQL Server), IBM (DB2), Oracle, Software AG (Adabas), Informix и Sybase. Их продукты нацелены на поддержку одновременной работы тысяч пользователей в сети, а базы данных могут хранится в распределенном виде на нескольких серверах. В Oracle имеется встроенный язык PL/SQL, в Informix – INFORMIX 4GL, в Adabas – Natural и т. д.

С появлением персональных компьютеров были созданы так называемые настольные СУБД. Родоначальником современных языков программирования баз данных для ПК принято считать СУБД dBase II, язык которой был интерпретируемым. Затем для него были созданы компиляторы, появились СУБД FoxPro и Clipper, поддерживающие диалекты этого языка. Сегодня похожие, но несовместимые версии языков семейства dBase реализованы в продуктах Visual FoxPro фирмы Microsoft и Visual dBase фирмы Inprise.

Базы знаний

База знаний – это один или несколько специальным образом организованных файлов, которые хранят систематизированную совокупность понятий, правил и фактов, относящихся к некоторой предметной области. Например, база знаний по химии углеводородов. Содержимое базы знаний оформляется, связывается между собой и представляется таким образом, чтобы на основе этого содержимого можно было с помощью специальных программ осуществлять рассуждения и делать выводы и получать выводы, которые в явном виде могут не присутствовать в базе данных. Для построения базы знаний применяются методы искусственного интеллекта, специальные языки описания знаний и интеллектуальный интерфейс. Базы знаний являются основной содержательной частью интеллектуальных информационных систем, интеллектуальных обучающих систем, интеллектуальных систем программирования и экспертных систем.

Экспертная системаэто система программных и аппаратных средств, включающая базу знаний. В экспертных системах с помощью баз знаний представляются навыки и опыт экспертов – специалистов в данной предметной области. Например, база знаний в области медицины содержит накопленные медицинскими специалистами сведения о связях между болезнями, их симптомами и порождающими причинами, рекомендуемые лечебные действия и их результаты. На основе такой базы знаний разрабатываются экспертные диагностические и прогнозирующие медицинские системы.

Экспертная система способна на основании методов искусственного интеллекта и представленных пользователем фактов идентифицировать ситуацию, поставить диагноз, сделать прогноз, сгенерировать решение или дать рекомендацию для выбора действия. Э.С. обычно ориентируется на некоторую предметную область, она способна получать, накапливать, корректировать знания из этой области, выводить новые знания из уже известных, решать практические задачи на основе этих знаний и объяснять ход решения. Кроме базы знаний, хранящей факты, закономерности и правила в ЭС входят программы-решатели, они реализуют функции планирования, поиска решения задачи, механизма логического вывода, часто из неполных и нечетких знаний. Создание ЭС начинается с разработки ее первоначального варианта – прототипа ЭС. Далее следует длительный многоэтапный процесс испытаний и совершенствования. Для программирования ЭС используются языки Лисп, Пролог, Си.

Искусственный интеллект.

Во-первых, это область информатики, занимающаяся научными исследованиями и разработкой методов и средств для правдоподобной имитации отдельных функций человеческого интеллекта с помощью автоматизированных систем. В рамках И.и. создаются методы, программные и технические средства решения задач, для которых отсутствуют формальные алгоритмы: распознавание изображений, понимание естественных языков и речи, обучение с учетом способностей ученика, постановка диагнозов, доказательство теорем и т.д. Эти задачи обычно решаются человеком с привлечением подсознания и поэтому их трудно моделировать. На основе методов И.и. разрабатываются программные интеллектуальные системы, например, интеллектуальные информационные системы, интеллектуальные обучающие системы, интеллектуальные системы программирования и т.д. Большинство таких систем используют для своей работы базы знаний, которые тоже разрабатываются с привлечением методов И.и. Иногда программы И.и. служат для моделирования поведения человека, а иногда – технических применений. Термин машинный интеллект является синонимом И.и., но чаще служит для указания только технологического аспекта проблемы И.и.

Во-вторых И.и. – это свойство автоматических и автоматизированных систем выполнять отдельные функции интеллекта человека, например, выбирать и принимать оптимальные решения на основе ранее полученного опыта и анализа внешних воздействий.

Интеллектуальная система программирования

Система программирования, в основе которой лежит естественный или профессионально-ориентированный язык. И.с.п. автоматически создает программу по сформулированному пользователем на естественном или профессионально-ориентированном языке описанию решаемой задачи. При этом пользователь освобождается от необходимости выполнять предварительную разработку алгоритма и программирование.

Интеллектуальный интерфейс

Интерфейс, обеспечивающий взаимодействие пользователя с компьютером на естественном языке. И.и обычно включает диалоговый процессор, интерпретирующий профессиональный язык пользователя, и планировщик, преобразующий описание задачи в программу ее решения на основе информации, хранящейся в базе знаний.

Интеллектуальная информационная система

Автоматизированная информационная система, снабженная интеллектуальным интерфейсом, дающим возможность пользователю делать запросы на естественном или профессионально-ориентированном языке.