Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
3.ПРАКТИКА / SEM2 / Literatura / Информатика_№14_15_2004 (обсуждение Примерной программы).doc
Скачиваний:
17
Добавлен:
21.03.2015
Размер:
401.41 Кб
Скачать

2004 № 15 Информатика

ГГ

Обсуждаем тему "Алгоритмизация"

ГОВОРЯТ УЧИТЕЛЯ

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

В обсуждении приняли участие учителя:

Енин Иван Николаевич (Красногвардейское, Белгород­ская область),

Жаров Сергей Леонидович (Ростов-на-Дону, школа № 55),

Кадыров Алексей Ревич (п. Куеда, Пермская область, школа № 2),

Керусенко Надежда Михайловна (Норильск, Красно­ярский край, гимназия № 5),

Крекин Михаил Евгеньевич (Москва, школа № 415),

Крылова Ольга Вячеславовна (Ефремов, Тульская об­ласть, гимназия),

Никанорова Лариса Николаевна (Москва, школа № 1194),

Новикова Ольга Николаевна (Югорск, Тюменская область),

Шумилина Нина Дмитриевна (Тверь, гимназия № 6).

Окончательная подготовка и редактирование текста — Я.Н. Зайдельман.

Выдержки из программы

Центральное теоретическое понятие современной инфор­матики — "алгоритм" вводится как содержательное поня­тие. Для записи алгоритмов используются полуформаль­ные языки блок-схем и структурного программирования. С самого начала работа с алгоритмами поддерживается ком­пьютером. Структуры записи и исполнение алгоритма ви­зуализируются.

В случае отсутствия должной технической базы для реали­зации отдельных работ практикума образующийся резерв вре­мени рекомендуется использовать для более глубокого изуче­ния раздела "Алгоритмизация" или на отработку пользова­тельских навыков с имеющимися средствами базовых ИКТ.

Алгоритмы и исполнители (19 ч)

Алгоритм. Свойства алгоритма. Способы записи алго­ритмов; блок-схемы. Возможность автоматизации деятель­ности человека. Исполнители алгоритмов (назначение, среда, режим работы, система команд). Компьютер как формальный исполнитель алгоритмов (программ).

Алгоритмические конструкции: следование, ветвление, повторение. Разбиение задачи на подзадачи, вспомогатель­ный алгоритм.

Алгоритмы работы с величинами: типы данных, ввод и вывод данных.

Языки программирования, их классификация.

Правила представления данных.

Правила записи основных операторов: ввода, вывода, при­сваивания, ветвления, цикла. Правила записи программы.

Этапы разработки программы: алгоритмизация — коди­рование — отладка — тестирование. Обрабатываемые объек­ты: цепочки символов, числа, списки, деревья, графы.

* * * Практические работы

  1. Разработка линейного алгоритма (программы) с ис­ пользованием математических функций при записи ариф­ метического выражения.

  2. Разработка алгоритма (программы), содержащего оператор ветвления.

  3. Разработка алгоритма (программы), содержащего оператор цикла.

  4. Разработка алгоритма (программы), содержащего подпрограмму.

  5. Разработка алгоритма (программы) по обработке од­ номерного массива.

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

* * * Практикум: работа VI

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

Разработка алгоритма для решения поставленной зада­чи с использованием вспомогательных алгоритмов, в том числе по обработке одномерного массива.

* * *

В результате изучения информатики и информацион­ных технологий ученик должен ' знать/понимать:

— основные свойства алгоритма, типы алгоритмических конструкций: следование, ветвление, цикл; понятие вспо­ могательного алгоритма;

уметь:

— выполнять базовые операции над объектами: цепочка­ ми символов, числами, списками, деревьями; проверять свойст­ ва этих объектов; выполнять и строить простые алгоритмы.

2004 № 15 ИНФОРМАТИКА

Программные средства

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

* * *

Из высказываний А.Л. Семенова в ходе обсуждения: Глядя на стандарты и программы, задумываешься, а что наши дети будут сдавать? Основной рассматриваемый нами вариант, что экзамены будут касаться "алгоритми­ческого мышления".

1. О месте темы в курсе

Главный вопрос, без понимания которого дальнейшее обсуждение вряд ли будет осмысленным, — содержа­тельное место данной темы в курсе.

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

В общем тексте программы алгоритмизация во мно­гом выглядит как инородное тело. "Центральность" по­нятия алгоритма декларативна: связи этой темы с осталь­ной частью программы не просматриваются. Лишь один раз за пределами данной темы — в практической работе 40 — упоминается использование системы программи­рования для построения компьютерной модели.

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

В связи со всем перечисленным возникают вопросы к авторам.

Каким вы видите место алгоритмизации в курсе? Как это место поддержано структурой программы? Верно ли, что наличие этой темы в программе не вытекает из ее (программы) внутренней логики, а представляет собой, скорее, дань традиции и уступку сторонникам алгорит­мической направленности школьной информатики?

2. О времени на изучение

При обсуждении почти каждой темы неизбежно воз­никает вопрос о выделенных на ее изучение часах. И

почти всегда учителя жалуются, что часов мало. Но в этот раз были не просто жалобы. Учителя в один голос утверждают: за 19 часов невозможно реально освоить предложенный объем так, чтобы выйти на заданный в программе обязательный уровень знаний и умений.

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

Конечно, 19 часов — это не так мало. Это самое боль­шое количество часов, выделенных в программе на одну тему. Но при попытке распределить эти 19 часов между всеми пунктами темы возникает ситуация тришкиного кафтана: уместить все перечисленное можно разве что в режиме демонстрации, но тогда не приходится говорить ни об обязательных знаниях и умениях, ни об экзаменах, ориентированных на алгоритмическое мышление.

Мы просим авторов сделать (если не в тексте прог­раммы, то хотя бы в рамках нашего проекта) более детальную раскладку часов по данной теме, указать при­мерную последовательность уроков и их содержание. Мы надеемся, что это поможет понять реальное со­держание темы и реально необходимый для нее объем времени.

3. Об алгоритмах и языках

Из программы не вполне ясно, какими средствами предлагается пользоваться для записи алгоритмов.

В преамбуле говорится о "полуформальных языках блок-схем и структурного программирования", но в ос­новном тексте блок-схемы упоминаются один раз (как способ записи алгоритмов), структурное программиро­вание — ни разу.

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

А вот в практических работах используется выраже­ние "Разработка алгоритма (программы)", создающее ощущение синонимичности слов "алгоритм" и "про­грамма" .

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

Между тем этот вопрос довольно важен. Во-первых, выбор средства записи тесно связан с проблемой форма­лизации.