Название: Методика преподавания информатики - Лапчик М.П.

Жанр: Информатика

Рейтинг:

Просмотров: 962


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

Задание. Сдвинуть циклически элементы списка вправо.

Эта задача является обратной к более простой (на Прологе) задаче о циклическом сдвиге элементов списка влево и занимает одну строчку:

 

сдвиг_вправо(L,R) :- сдвиг_влево(R,L).

 

В рамках темы рекомендуется решить такие классические задачи, как «Ханойские башни», «Задача о восьми ферзях», «Задача о перестановках», которые есть в ряде руководств.

 

Тема «Структуры данных: бинарные деревья. Основные

предикаты. Решение задач с помощью бинарных деревьев»

 

Введение указанной в заголовке структуры целесообразно начать с задачи о поиске элемента в списке достаточно большой размерности. При этом выяснится, что число сравнений окажется большим, особенно тогда, когда элемент в списке не обнаружится. Введение новой структуры (бинарного дерева) значительно упростит поиск. Далее следует дать определение бинарногодерева, показать на примерах его графовое представление, показать связь с линейными списками: линейное дерево фактически есть список. Даются определения и иллюстрируются на примерах сбалансированные, упорядоченные бинарные деревья.

Запись этой структуры на Прологе особенного труда не составит, но следует учитывать ее громоздкость, поэтому при выделении левых поддеревьев, корней и правых поддеревьев следует Придерживаться определенной системы, например использование Различных строк для каждой части дерева с отступами.

Основные предикаты работы с бинарными деревьями также следует проверять в режиме ручной трассировки, при этом размеры конкретных структур должны быть относительно небольшими.

Выбор задач определяется главным достоинством бинарных Деревьев — эффективностью поиска, но результаты решения на прологе нагляднее в виде списков.

 

Тема «Применение Пролога: понимание естественного

языка (КС-грамматики)»

 

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

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

 

15.8. Требования к знаниям и умениям

учащихся

 

Тема «Введение в Пролог»

 

Учащиеся должны знать:

• в чем состоит принципиальное отличие операторного языка от логического.


Оцените книгу: 1 2 3 4 5