Тема учебного занятия

Кол-во часов

8. Структуры данных: списки. Основные предикаты работы со списками. Решение задач с помощью списков. Задачи, решаемые с помощью перебора

12

9. Структуры данных: бинарные деревья. Основные предикаты. Решение задаче помощью бинарных деревьев

6

10. Применение Пролога: понимание естественного языка (КС-грамматики)

3

Всего:

68


Вопросы для самоконтроля и обсуждения к главе 15

1. Каково место программирования в структуре современной школьной информатики?

2. На каких примерах целесообразно знакомить учащихся с принципами структурной алгоритмизации? В каком порядке эти примеры излагать?

3. В каком объеме изучается язык Паскаль в различных вариантах базового курса информатики?

4. Какую методическую пользу приносит изучение метаязыков описания языков программирования?

5. Как построить рассказ о структурированных типах данных? На каких примерах объяснять данные таких типов, как множество, запись, файл, стек, очередь, строка и др.?

6. Каковы могут быть варианты изучения логических выражений?

7. На каких примерах удобно объяснить различия между понятиями порядковый тип и упорядоченный muni Как в различных учебных пособиях по Паскалю именуются равносильные этим понятия?

8. На каких примерах объяснить учащимся, почему в программировании следует четко различать вещественные и целые математические величины и в чем здесь отличия от чисто математического подхода?

9. Как методически целесообразно построить рассказ об операторе множественного ветвления? На каких примерах соотнести его с условным оператором?

НЕ нашли? Не то? Что вы ищете?

10. Как методически целесообразно объяснить учащимся, для чего в Паскале три оператора цикла? Как в деталях объяснить порядок исполнения каждого из них?

11. На каких примерах можно объяснить учащимся целесообразность Наличия в Паскале интервального типа данных?

12. На каких примерах удобно объяснить учащимся проблемы, связанные с процедурами и функциями:

• выделение вспомогательного алгоритма;

• локализация переменных;

• различие между параметрами-переменными и параметрами-значениями;

• область действия описаний в процедурах;

• различия между процедурой и функцией;

• смысл использования глобальных переменных;

• рекурсии.

13. Как и на каких примерах можно объяснить учащимся полезность таких типов данных, как массив (одномерный и двумерный), строка, множество, запись, файл.

14. На каких примерах объяснить различия между одномерным массивом и записью? Файлом прямого и последовательного доступа?

15. Как и на каких примерах объяснить учащимся особую практическую значимость поиска и сортировки?

16. Как сформулировать идею внешней сортировки и пути ее реализации, обойдя сложные приемы программирования?

17. Как пояснить учащимся принципиальное различие между процедурой и модулем?

18. Какие установочные процедуры и графические примитивы модуля Graph представляются Вам достаточными для рассказа о них учащимся в школьном курсе информатики?

19. Какие простые содержательные задачи можно использовать для отработки динамических структур данных, таких как: стек, очередь, двоичное дерево?

20. Какой может быть цепочка примеров возрастающей сложности, на которых можно сравнивать структурный и объектно-ориентированный подходы к проектированию программ на этапе декомпозиции?

21. Какие знания учащихся по структурному программированию можно использовать, вводя понятие объекта, если:

а) программирование изучалось на уровне базового курса информатики?

б) программирование изучалось углубленно?

22. Какой может быть цепочка примеров возрастающей сложности для отработки понимания механизмов взаимодействия классов и объектов.

23. Можно ли при объяснении учащимся способов доступа к полям и методам объектов использовать аналогии с доступом к полям записей и процедурам модулей в Турбо Паскале?

24. На каких содержательных задачах уместно объяснять понятия наследования и иерархии классов?

25. На каких примерах можно объяснить учащимся основные понятия Delphi?

26. Какими наводящими вопросами помочь учащимся проследить цепочку логических выводов при получении ответа на вопрос (с помощью простейших примеров, включающих несколько фактов и вопрос, ответ на который представляется однозначно вытекающим из этих фактов)?

27. С помощью каких отрывков из различных популярных литературных произведений учащиеся могли бы составить базы данных из приведенных в этих отрывках фактов?

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

29. Как удобно оформлять на доске и на бумаге трассировку запросов по базам данных и базам знаний Пролога? Есть ли рекомендации на эту тему в известной Вам методической литературе?

30. На каких простейших примерах уместно продемонстрировать учащимся решение логических задач на Прологе?

31. На каких простых примерах можно продемонстрировать учащимся рекурсию?

32. Как и на каких примерах объяснить учащимся, что использование списков может быть более эффективным, чем построение баз данных?

15.10. Лабораторный практикум


Тема «Профильные курсы информатики, ориентированные

на программирование»

Занятие 1

Тема «Изучение структурного, объектно-ориентированного и логического программирования»

Дидактические цели: поисково-исследовательские.

Способ организации: лабораторная работа.

Технологии и методы обучения: поисковые упражнения, аннотирование, учебный аукцион идей.

Средства обучения: учебно-методическая литература [1 — 45], программные средства [1].

Предварительная подготовка студентов: требуется ознакомиться с планом работы (см. ниже) и выполнить п. п. 1 — 3.

Теоретические сведения

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

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

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

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

План работы

1. Выбрать (по согласованию с преподавателем) конкретную тему урока совершенствования знаний, умений и навыков по программированию.

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

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

4. Выполнить задание I (см. ниже) и представить письменные отчеты.

5. Принять участие в учебном аукционе идей.

Дидактические материалы

I. Задание

Разработать конспект урока совершенствования знаний, умений и навыков по заданной теме в соответствии с планом, сформулированным в подразделе 14.6 (занятие 1, задание 1). Следует учитывать специфику урока совершенствования знаний, умений и навыков и отразить в конспекте методические особенности решения основных дидактических задач урока: систематизацию и обобщение новых знаний; повторение и закрепление ранее усвоенных знаний; применение знаний на практике для углубления и расширения ранее усвоенных знаний; формирование умений и навыков; контроль за ходом изучения учебного материала и совершенствование знаний, умений и навыков.

Тематика уроков совершенствования знаний, умений и навыков по программированию:

№ 1. Разработка алгоритмов на основе структурного подхода.

№ 2. Синтаксические диаграммы в описании языка Паскаль.

№ 3. Итерационные циклические процессы.

№ 4. Процедуры. Взаимодействие с окружающей средой.

№ 5. Функции. Рекурсии.

№ 6. Объектно-ориентированная технология проектирования программ.

№ 7. Разработка механизмов взаимодействия классов и объектов.

№ 8. Описание объектов и классов в Турбо Паскале.

№ 9. Виртуальные и динамические методы.

№ 10. Логическое программирование: поиск решения и отладка программ.

№ 11. Модульное программирование на языке Пролог.

№ 12. Методы и средства разработки программ на Прологе.

№ 13. Решение логических задач.

П. Структуризация учебной информации

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

Таблица 15.7


Системы программирования

Технологии программирования

Преимущества

Недостатки

Возможности применения

Перспективные направления развития

Рейтинговая оценка


Методические рекомендации

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135