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

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

Рейтинг:

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


 

15.7. Методика обучения логическому

программированию

 

Логическое программирование в качестве объекта изучения пришло в нашу школу гораздо раньше объектного. В период с 1987 по 1995 г. С.Г.Григорьевым, Е.А.Ерохиной, В.А.Кайминьгм, Н.Д.Угриновичем, А. Г. Щеголевым и другими авторами были разработаны многочисленные методические материалы по логическому программированию. Тем не менее специального пособия по организации курса логического программирования, продолжающего базовый курс информатики, пока не существует.

Поскольку иных реально доступных языков, кроме Пролога, для реализации логического программирования не существует, то этот же курс можно назвать (как часто и делают) «Язык программирования Пролог».

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

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

При планировании курса учитель должен исходить из отпущенных на него часов. Возможно несколько вариантов: ознакомительный 34-часовой курс, более полный 68-часовой или еще больший, носящий характер интегрированного курса (например, с классической логикой и/или математической логикой). Ниже представлены варианты такого планирования.

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

 

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

 

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

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

Материалы для этой темы можно найти в предисловии к большинству учебников по Прологу, а также в журнальных статьях, указанных в списке литературы. Если учащиеся уже изучали элементарное введение в Пролог в базовом курсе, то беседа эта может быть сведена к напоминанию основных принципиальных позиций и показу нескольких программ на Прологе. Если нет, то после общего разговора приводим элементарные программы на Прологе, не упоминая ни о каких формальных правилах их построения. Такие программы включают два-три факта и один вопрос, ответ на который, с точки зрения учащихся, очевиден. При этом подчеркните: очевидность ответа для человека означает, что его мозг выполнил некую (пусть и очень простую) программу. Если решать задачу на Паскале, то эту программу придется написать человеку, если же решать ее на Прологе, то сопровождающая его системная программа эту прикладную программу напишет сама. Как она это сделает — вопрос «на потом».

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


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