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

Цели: Рассмотреть основные алгоритмические конструкции. Языки программирования: состав, классификация. Учебные языки программирования. Типы данных, выражения. Ввод – вывод данных в программе. Программирование линейных, разветвляющихся, циклических алгоритмов. Литерные величины, графические объекты, массивы.

Перечень вопросов, выносимых для рассмотрения:

1. Функции языка программирования

2. Уровни изучения языка

3. Средства изучения

4. Методы и формы изучения

5. Классификация учебных задач в связи с изучением языков программирования (ЯП)

1 Дидактическая структура темы

Функции языка программирования.

Перечислим функции ЯП:

1) средство для извлечения немедленной практиче ской пользы из общения с ЭВМ (использование гото вых ПС);

2) средство записи, обдумывания и понимания алгоритмов, средство общения в информатике;

3) объект изучения, расширяющий знания учащегося в области инструментария информатики.

Уровни изучения языка. Выделим уровни овладения ЯП.

1. Умение применять готовые ПС на изучаемом языке в качестве параметрического пользователя (загрузка, запуск, прерывание). Это знание команд ОС в связи с языком.

2. Освоение части языка, общей для ЯП данного класса: имена, значения, выражения, составные коман ды. (Отметим, что УАЯ-учебный алгоритмический язык задумывался как такая общая
часть процедурных языков.)

3. Освоение средств, характерных именно для дан ного языка в целом, независимо от версий, его «соль». Для УАЯ это исполнители. В случае Паскаля это типы и структуры данных, объекты.

4. Изучение особенностей конкретной версии языка на данной ЭВМ, взаимодействие с ОС и аппаратурой, прямой доступ к памяти, видеопамяти, портам и т. п.

Сразу отметим, что это материал не для массового изу чения, даже если учитель им владеет свободно.

Причины и цели изучения второго ЯП. Так как углубление в программирование не является целью препода вания информатики в массовой школе, нужны веские причины для освоения второго после УАЯ языка, осо бенно если это не язык СУБД, Пролог, а язык того же или более низкого уровня. Рассмотрим эти причины.

1. Недостаточность ПС общего назначения для кон кретного типа школьных ПЭВМ (СУБД, ЭТ). В этом случае средства второго языка нужны для поддержки соответствующей темы методом открытых программ. Учитель при помощи сильных учащихся создает корот кую, понятную и легко расширяемую учащимися вер сию ПС на втором языке, если средств Кумира для
этого недостаточно.

2. Слабость программной поддержки темы «Модели рование». Эта причина встречается чаще. Но и здесь второй язык нужен, только если не хватает изученных средств моделирования, в первую очередь ЭТ. В силу объективного упрощения математики для компьютер ных моделей алгоритмы-модели тоже упрощаются; нет оснований углубляться в язык.

3. Подготовка к олимпиадам. Если олимпиады про водятся по-старому, как программирование больших, часто комбинаторных задач с Громоздкими тестами, то без сильного языка, видимо, не обойтись. Если же олимпиада имеет целью выявить творческие способности участника методом ограничения используемых средств или алгоритмических конструкций, то углуб ляться в язык тоже нет оснований.

4. Стремление обогатить понятийный аппарат уча щегося, упрочнить знания. В этом случае возможны языки типа СУБД, Паскаль, Модула, Пролог, но без
погружения в машинно-зависимые и профессиональ ные расширения.

Но есть довод в пользу освоения собственно среды программирования. Современные Турбо системы не просто транслируют и выполняют программу, но по гружают обучаемого в диалоговую среду, «микромир» с наглядными правилами «работы-игры». Это мощное, методически оправданное средство учебной деятельно сти вообще. Далее, синтаксический анализ текста программы в такой среде выполняется в сущности, как в экспертной системе, а пошаговое выполнение програм мы — аналог демонстрации процесса вывода в экспертной системе (ЭС).

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

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

Методические средства таковы: описание языка, лучше в двух вариантах, адаптированное и продуманно сокращенное для учащихся, а полное, формально-справочное — для учителя и «фанатов».

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

Второй язык, как и ино странный после «родного» — УАЯ, изучается путем переноса, аналогий и сравнения. Словесные объяснения предельно сокращаются. Например, имена в Паскале составляются так же, как и в УАЯ (сходство!). Неприемлемо преподавание второго языка так, словно информатика только сегодня и толь ко с него началась («переменной называется...»).

Если первый язык изучался вообще без машины, то второй должен прежде всего послужить мостиком от первого языка к машине путем перевода алгоритмов с первого на второй и их реализации. Тогда изучение первого языка мотивированным, особенно если его уровень выше. Тем самым учащийся может обдумать и написать алгоритм на УАЯ и лишь затем, уже не думая, перевести его на тот же Бейсик.

Типы задач:

Учебные задачи в связи с изучением ЯП можно классифицировать так:

1)По типу конструкций языка и их связям (если в цикле и т.п.);

2)По виду деятельности учащегося: освоение готовой программы, перевод готового алгоритма на ЯП, модификация готовой программы.

3)По типу информации (числа, текст, таблицы, файлы);

Контрольные вопросы:

1. Перечислите функции языка программирования.

2. Основные уровни изучения языка.

3. Какие имеются средства изучения?

4. Причины и цели изучения второго ЯП.

5. Как классифицируются учебные задачи?