Теория и методика преподавания раздела "Алгоритмизация и программирование" в школьном курсе информатики

Разработка теории и методики преподавания раздела "Алгоритмизация и программирование" в школьном курсе информатики. Методические проблемы изучения алгоритмов работы с величинами. Требования к знаниям учащихся по линии алгоритмизации и программирования.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 09.07.2012
Размер файла 70,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Литература

1. Алгоритмика: 5--7 классы: Учеб. и задачник для общеобразоват. учеб. заведений /А. К. Звонкий, А. Г. Кулаков, С.К.Ландо и др. - М.: Дрофа, 1996.

2. Гейн А.Г., Сенокосов А. И., Шояохович В.Ф.Информатика: Классы 7-9. - М.: Дрофа, 1998.

3. Программы общеобразовательных учреждений. Информатика / Сост. А.А. Кузнецов, Л.Е.Самовольнова. -- М,: Просвещение, 1998. " 19. Проект федерального компонента Государственного образовательного стандарта начального общего, основного общего и среднего (полного) образования. Образовательная область «Информатика» // ИНФО. -- 1997.-№1.-С.З-11.

4. Изучение основ информатики и вычислительной техники: Пособие для учителей / Под ред. А.П.Ершова, В-М.Монахова. -- М.: Просвеще-нис,'1985.-Ч, 1,2.

5. Ин4юрматика: Учеб. для 8--9кл. сред. шк. /А.Г. Гейн, Е.В Линецкий, М.В. Сапир, В.Ф. Шолохович. -- М.: Просвещение, 1994.

6. Информатика: Учеб. по базовому курсу/ И.Г.Семакин.Л.А-Залогова, I, С.В.Русаков, Л.В.Шестакова. - М.: Лаборатория Базовых Знаний, 1998. 1 7. Информатика: Учеб- пособие для 10 - 11 кл, общеобразоват. учреждений/Л.З. Шаунукова. -- М.: Просвещение, 2000.

8. Кузнецов Л.А., Лпитова И. В. Основы информатики. 8--9 кл.: Учеб. для общеобразоват. учеб. заведений. -- М.: Дрофа, 1999.

9. Кулаков А. Г., Ландо С. К. Алгоритмика. 5--7 кл.: Метод, рекомендации для учителя: Решение задач. -- М.: Дрофа, 1997.

10. Лапчик М.Л. Вычисления. Алгоритмизация. Программирование:

Пособие для учителя. -- М,: Просвещение, 1988.

11. Летчик М. П. Информатика и информационные технологии в системе общего и профессионального образования: Монография. -- Омск:

Изд-во Ом. гос. пед. ун-та, 1999.

12. Основы информатики и вычислительной техники: Пробный учеб. для 10--11 кл. сред. шк. /А. Г. Гейн, В. Г. Житомирский, Е. В.Липецкий и др. -- 2-е изд. -- М.: Просвещение, 1992.

13- Основы информатики и вычислительной техники: Пробный учеб. пособие для 10--11 кл. сред. шк. / В.А.Каймин, А.Г.Щеголев, Е.А.Еро-хина, Д.П.Федюшин. -- М.: Просвещение, 1989.

14. Основы информатики и вычислительной техники: Пробный учеб. для сред, учеб. заведений/А. Г. Кушниренко, Г. В.Лебедев, Р.А.Сворень,-- М.: Просвещение, 1993.

15. Основы информатики и вычислительной техники: Пробное учеб. пособие для сред. учеб, заведений: В 2 ч./Под ред. А-П. Ершова и В.М.Монахова, -- М.: Просвещение, 1985 -- 1986.

16. Пейперт С. Дети, компьютер и плодотворные идеи: Пер. с англ. -- М.: Мир, 1990.

17. Программы для средних общеобразовательных учебных заведений. Основы информатики и вычислительной техники. -- М.: Просвещение, 1992.

Приложения

Урок 1

Тема: Закрепление основных понятий алгоритма

Для закрепления основных понятий, связанных с определением алгоритма, полезно рассмотреть с учениками несколько заданий следующего содержания:

1) сыграть роль исполнителя: дан алгоритм, формально исполнить его;

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

3) в рамках данной системы команд построить алгоритм;

4) определить необходимый набор исходных данных для решения задачи.

В качестве примера задачи первого типа можно использовать алгоритм игры Баше, рассматриваемый в учебниках [6, 8, 15]. В книгах [8, 15] правила игры определены так: в игре используются 7, 11, 15, 19 предметов. За один ход можно брать 1, 2 или 3 предмета. Проигрывает тот игрок, который берет последний предмет. Предлагается алгоритм выигрыша для первого игрока. В книге [6] правила несколько другие. В игре используются 11, 16, 21, 26,... предметов. За один ход можно брать от 1 до 4 предметов. Рассматривается алгоритм, благодаря которому всегда выигрывает игрок, берущий вторым.

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

Задача 1. «Разгадать загадку» алгоритма, т. е. объяснить, почему второй игрок всегда выигрывает (для варианта [6])?

Решение. По данным правилам второй игрок будет всегда выигрывать, если общее число камней определяется формулой:

N= 5k + 1

Здесь k - любое натуральное число.

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

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

1. Взять 1 камень.

2. Предоставить ход сопернику; соперник взял n камней.

3. Если n + 1 < 5, то взять 5 - (n + 1) камней.

4. Предоставить ход сопернику.

И далее играть по выигрышному алгоритму для второго игрока.

Следующая задача требует от учеников незаурядных математических навыков.

Задача 3. Попробуйте провести математический анализ игры Баше в общем случае для N камней. Определите правила игры (т. е. сколько камней можно брать за один ход), при котором имеется выигрышный алгоритм. Опишите этот алгоритм в виде последовательности команд.

Решение. Выигрышный алгоритм для второго игрока можно построить только в тех случаях, когда исходное число камней (N) представимо в виде

N= X * K+ 1

где Х и К - натуральные числа. По правилам игры за один ход можно брать от 1 до X - 1 камней. Второй игрок будет всегда выигрывать, если своим ходом он будет дополнять число камней, взятых соперником, до X. Например, пусть N = 25. Это значение можно представить: 25 = 4 * 6 + 1.

Следовательно, правило игры должно быть таким: за один ход можно брать 1 - 2 - 3 камня. А для того, чтобы второй игрок всегда выигрывал, в свой ход он должен дополнять ход соперника до 4 камней.

Следующая задача относится ко второму типу из приведенной выше классификации.

Задача 4. Назвать исполнителя следующего вида работы - выдача заработной платы; определить СКИ исполнителя,

Решение. Очевидно, исполнителя можно назвать «Кассир». Система команд, которые он должен уметь выполнять, следующая:

- найти в ведомости получателя;

- посчитать деньги;

- выдать деньги.

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

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

Рассмотрим еще один пример задания второго типа.

Задача 5. Описать систему команд исполнителя «Геометр», который мог бы выполнять геометрические построения с помощью циркуля и линейки.

Решение. Ученикам знаком класс задач, которые в геометрии называются задачами на построение с помощью линейки, циркуля и карандаша. Полной системой команд для исполнителя «Геометр» является следующий список:

1. Провести отрезок прямой между двумя данными точками.

2. Установить раствор циркуля, равный длине данного отрезка.

3. Установить ножку циркуля в данную точку.

4. Провести окружность.

5. Выделить общие точки двух линий (пересечения или касания). Обратите внимание на элементарность каждой команды. Делить их на более простые не имеет смысла.

Следующая задача относится к третьему типу.

Задача 6. Записать для Геометра алгоритм решения следующей задачи: дан отрезок АВ; построить окружность, для которой отрезок АВ является диаметром.

Решение.

Алгоритм ОКРУЖНОСТЬ ДАННОГО ДИАМЕТРА

начало

установить ножку циркуля в т. А

установить раствор циркуля, равный АВ

провести окружность

установить ножку циркуля в т. В

провести окружность

выделить точки пересечения окружностей: т. С и т. D

провести отрезок CD

выделить точку пересечения АВ и CD: т. О

установить ножку циркуля в т. О

установить раствор циркуля, равный 0В

провести окружность

конец

Анализируя этот пример, следует подчеркнуть то, что данный алгоритм удовлетворяет всем основным свойствам: понятности, точности, конечности; благодаря чему может исполняться формально.

Урок 2

Тема: Использование языка Паскаль в программировании

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

Пример 1. Составить алгоритм, по которому на компьютере будет происходить следующее: в переменную S вводится возраст Саши, в переменную М вводится возраст Маши. В качестве результата на экран выводится фраза «Саша старше Маши», или «Маша старше Саши», или «Саша и Маша ровесники». Написать программу на Паскале по этому алгоритму.

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

алг САША-МАША Program SashaSMasha;

веш; S, М var S, М: real;

нач вывод `Возраст Саши:' begin write (`Возраст

ввод S Саши:');

вывод `Возраст readin(S) ;

Маши:' write(`Возраст

Ввод М Маши:') ;

если S > М readln( М);

то вывод `Саша if S > М

старше Маши' then write(`Cашa

иначе если S = М старше Маши')

то вывод `Саша else if S = М

и Маша then write(`Саша

ровесники' и Маша ровесники')

иначе вывод else write (`Маша

`Маша старше старше Саши')

Саши' end.

кв

кв

кон

Пример 2. Составить алгоритм упорядочения значений трех переменных по возрастанию, т.е. при любых исходных значениях А, В, С отсортировать их так, чтобы стало А В С. Написать программу па Паскале по этому алгоритму.

Решение. В подразделе 12.4 учебника [6] рассмотрен алгоритм упорядочения значений двух переменные. Для решения данной задачи требуется трижды применить этот алгоритм: упорядочить А и В, упорядочить В и С (после этого максимальное значение попадет в С), еще раз упорядочить А и В. Таким образом, алгоритм будет иметь структуру трех последовательных неполных ветвлений.

Алг СОРТИРОВКА-3 Program SORT_3;

вещ А, В, С, Х var А,В,С,X: real;

нач begin

ввод А, В, С readln(А, В, С);

если А > В if A > В

то then begin

X := А; X := А;

А := В; А := В;

В := Х В := Х

кв end;

если В > С if В > С

то then begin

X := В; Х := В;

В := С; В := С;

С := Х С := Х

кв end;

если А > В if A > В

то then begin

X := А; Х := А;

А := В; А := В;

В := Х В := Х

кв end;

вывод А,В,С write(А,В,С)

кон end.

Пример З. Дано вещественное число X и натуральное N. Составить алгоритм вычисления . Написать программу на Паскале.

Решение. В Паскале нет операции возведения в степень. Если показатель степени - целое положительное число, то возводить в степень нужно путем N-кратного умножения основания самого на себя. Реализуется это циклическим алгоритмом:

алг Степень Program Power;

цел N, i; вещ X; var N,i: integer;

нач ввод N X: real;

ввод Х begin readln(N) ;

i:=l; readln(X) ;

Y:=l; i:=l;

пока i<=N, повторять Y:==l;

нц while i<=N do

Y:=Y*X begin

i:=i+1 Y:=Y*X;

кц i:=i+l

вывод Y end;

кон write(Y)

end.

Пример 4. Последовательно вводятся N целых чисел. Найти максимальное из них.

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

Алг максимум Program maximum;

цел N, i, X, MAX var N, i, X, MAX: integer;

нач begin

вывод 'введите N'; write('введите N');

ввод N readln(N);

вывод 'введите X'; write('введите X');

ввод Х readln(X) ;

МАХ:=Х; i:=l МАХ:= X; i:=l;

пока i < N, повторять while i < N do

нц begin

вывод 'Введите X'; write('Введите X');

ввод Х readln(X);

если Х > MAX if Х > МАХ

то МАХ:=Х then MAX:=X;

кв i:=i+l end;

i:=i+l end;

кц writeln(MAX)

вывод MAX end.

кон

Размещено на Allbest.ru


Подобные документы

  • Теоретические основы преподавания раздела информатики "Моделирование и формализация" в школе. Разработка системы задач по моделированию в различных средах (графический и текстовый редакторы, электронные таблицы, система программирования Visual Basic).

    курсовая работа [127,2 K], добавлен 26.09.2012

  • Исторические аспекты развития линии "Алгоритмизация и программирование" в старшей школе. Изучение языка программирования Python с применением дистанционных курсов Coursera. Методическая система обучения программированию с использованием Coursera.

    дипломная работа [808,8 K], добавлен 13.12.2017

  • Место темы "Кодирование информации" в школьном курсе информатики. Рекомендации по изучению "Кодирования информации" в школьном курсе информатики. Дидактический материал для изучения темы "Кодирование информации" и внеклассное мероприятие по информатике.

    курсовая работа [2,3 M], добавлен 17.06.2012

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

    дипломная работа [3,7 M], добавлен 30.06.2014

  • Алгоритмизация и структурное программирование на языке С/С++. Создание справочника в памяти (ввод данных), вывод справочника на экран с использованием потоковых классов, сортировка методом Шелла. Циклы, описание применяемых специальных алгоритмов.

    курсовая работа [1,0 M], добавлен 26.02.2012

  • Создание работоспособного модуля по работе с мобильными картами АЗС. Разработка базы данных в среде программирования Турбо Паскаль для работы с текстами и файловыми структурами. Описание методов алгоритмизации процессов сортировки и редактирования.

    курсовая работа [1,9 M], добавлен 05.12.2011

  • Роль компьютера в обучении. Реализация принципа наглядности в обучающих программах. Технология создания обучающей программы. Типы компьютерных тестов. Структуры линейной модели знаний. Графический экран системы Лого Миры. Форма записи алгоритма.

    дипломная работа [3,8 M], добавлен 14.04.2014

  • Графические обозначения символов, применяемые при составлении схем алгоритмов. Оформление текстовых документов. Описание вычислительных методов алгоритмизации и программирования задач. Ручной просчет отладочного варианта. Машинное тестирование программы.

    курсовая работа [178,2 K], добавлен 01.06.2014

  • Основные понятия и структура обработчика на языке Pascal. Элективные курсы по информатике в системе профильного обучения. Элективный курс "Программирование в среде Delphi". Методические материалы по изучению программирования на языке Object Pascal.

    методичка [55,4 K], добавлен 08.12.2010

  • Изучение функций и возможностей среды разработки языка программирования Pascal. Рассмотрение работы с одномерными и двумерными массивами, со строками и числами. Математическая формулировка задач. Разработка алгоритмов, описание структуры программ.

    курсовая работа [879,8 K], добавлен 11.02.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.