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

Автор работы: Пользователь скрыл имя, 13 Января 2014 в 16:33, дипломная работа

Описание работы

Цель: исследовать методику изучения темы: «Алгоритмы и алгоритмические структуры», позволяющую соблюдать целостность учебного материала на уроках информатики в школе.
Для реализации целей исследования необходимо решить следующие задачи:
• Сформулировать представление о понятии алгоритма, алгоритмической структуры и алгоритмического мышления;
• Изучить происхождение данных понятий, их классификацию, способы представления алгоритмических структур;
• Выявить методические особенности изучения темы: «Алгоритмы и алгоритмические структуры», как необходимый компанент в учебном процессе для соблюдения целостности учебного материала на уроках информатики в школе и развития алгоритмического мышления.

Содержание работы

Введение………………………………………………………………..................3
Глава I. Алгоритмы и алгоритмизация в школьном курсе
информатики.
1.1. Определение алгоритма…………………………………………..…..5
1.2. Свойства алгоритмов………………………………………………....6
1.3. Виды алгоритмов и их реализация…………………………………..9
1.4. Методы изображения алгоритмов………………………………….13
1.5. Роль алгоритмов, программирования и решения задач
в школьном курсе информатики…………………………………....19
1.6. Роль решения задач в базовом курсе информатики,
как основного способа развития алгоритмического мышления…………………………………………………….............24
1.7. Развитие алгоритмического мышления…………………………….26
Глава II. Структурированный конспект занятий по темам
раздела «Алгоритмы и алгоритмические структуры»
в школьном курсе информатике
2.1. Базовый структурированный конспект тем раздела «Алгоритмы и алгоритмические структуры»………………….....30
2.2. Главная цель курса информатики в школе развитие алгоритмического мышления…………………………………...…..46
2.3. Развитие алгоритмического мышления на уроках информатики в школе…………………………………...………………………….....52
2.4. Диагностика и анализ влияния изучения тем раздела «Алгоритмы и алгоритмические структуры» на развитие алгоритмического мышления…………………………………….....55
Заключение….………………………………………………………………......61
Список литературы………………………………………………………..…...63

Файлы: 1 файл

Дипломная.doc

— 1.33 Мб (Скачать файл)

Пусть у нас имеется  вертикальная металлическая клетчатая  стена (в учебнике – «клетчатое поле») с выступающим прямоугольным «препятствием», а на стене – несколько выше препятствия – в одной из клеток находится Робот. Робот – это машинка с антенной, батарейками, моторами, магнитными присосками и т.п. И пусть у нас в руках имеется пульт радиоуправления Роботом с кнопками:

           

Нажимаем на кнопку «→» - Робот смещается на клетку вправо, нажимаем кнопку «←» - смещается влево, на «↑» - вверх, на «↓» - вниз.

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

Если такую машинку – радиоуправляемого Робота – принести в класс, прикрепить к клетчатой доске и дать ученику пульт управления, то любой ученик в состоянии, глядя на Робота, понажимать на кнопки так, чтобы Робот спустился вниз под препятствие, объехав его. Тут нет вообще никакой задачи, даже ребенок, начиная с 5-7 лет, в состоянии это проделать.

Этот стиль взаимодействия с электронными устройствами называется «непосредственным управлением». Т.е. нажимаем на кнопку и смотрим результат, нажимаем другую кнопку, смотрим, что получилось, принимаем решение, какую кнопку нажать следующей и т.д., - т.е. принимаю решение по ходу управления.

                          Схема непосредственного управления

                                                      команда



                                                         обратная связь

Итак, в этой схеме  человек нажимает на кнопки, а «исполнитель»  выполняет действия. Глобальный план действий (как и куда двигаться) человек  может придумать по ходу, по мере выполнения команд и прояснения ситуации.

Как все это может  быть организовано на уроке: пока у  нас нет Робота в «металле», учитель  может играть его роль, - рисуя  Робота и клетчатое поле на доске. Удобно также  использовать магнитные  доски – на них легко перемещать Робота и не надо постоянно стирать и рисовать его положение.

Итак, на уроке – даже в младших классах, - можно поднять  самого слабого ученика и сказать:  «Иванов, командуй!». И он без  труда, глядя, как выполняете его команды (перемещаете робота по доске), продиктует вам последовательность команд «вниз», «вправо» и т.д., по которым Робот обойдет препятствие.

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

Более сложная задача управления с использованием команд «обратной связи» также не вызывает затруднений.

Теперь немного усложним задачу. Будем считать, что Робот – в соседней  комнате или вообще далеко от нас (т.е. мы его не видим), а у нас на пульте есть специальные кнопки:  «? ←», «? →»,  «? ↑»,  «? ↓» и лампочка. Нажимаем на кнопку «?↓» - Робот анализирует, можно ли сделать шаг вниз, и, если вниз шаг сделать можно, то лампочка на пульте загорается зеленым цветом (если нельзя,- то красным). Итак, нажали на кнопку «?↓», если зажегся зеленый свет, значит снизу свободно, а если красный, значит снизу – препятствие.

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

Как? Известно, что Робот  стоит где-то выше препятствия, обстановку не видно, размеры препятствия неизвестны. Что надо делать? Надо шагать вниз, пока не дойдем до препятствия, т.е. при каждом шаге проверять (нажимая кнопку «?↓»), свободно ли еще снизу (зеленый свет) или уже препятствие (красный). Как только загорится красный свет (препятствие), надо  начать шагать вправо, при каждом шаге проверяя (нажимая кнопку «?↓») не кончилось ли препятствие. Потом спускаться вниз, проверяя наличие препятствия слева (кнопка «?↓»). И, наконец, сделать один шаг влево, чтобы оказаться под препятствием. Такие последовательные нажатия на кнопки даже с анализом невидимой и неизвестной обстановки доступны любому школьнику.

Конечно, дети не родились с умением такие задачи решать. Они просто раньше много решали подобных задач, много тренировались: когда  погремушкой гремели, а потом  в песочнице возились, потом книжки запихивали в портфель, по телефону учились звонить и лифтом  или радиоприемником управлять. А вот в задаче «программного управления» - жизненный опыт у школьников не накоплен, потому она и оказывается трудной.

Записать или объяснить  кому-нибудь алгоритм труднее, чем выполнить  работу самому.

А если теперь школьника попросить: «Запиши как – нибудь всю последовательность нажатий на кнопки для обхода препятствия неизвестных размеров, находящегося ниже Робота», то тут-то и выяснится, что значительная часть учеников:

    • Прекрасно представляет себе, на какие кнопки и как надо нажимать, чтобы заставить Робота препятствие обойти, и
    • Не в состоянии четко описать (записать) эту последовательность действий.

Нет ничего удивительного  в том, что алгоритм легче выполнить, чем записать.

Вы можете называть эту  запись алгоритмом или программой, или никак не называть. Вы можете просить записать это хоть на русском языке, хоть на школьном алгоритмическом, хоть на Бейсике, хоть на языке, придуманном самим школьником,  или на чем угодно – суть дела это неизменит.  А суть в том, что, если раньше человек прямо нажимал на кнопки (схема «непосредственного управления»), то теперь человек пишет программу (алгоритм), которая далее будет выполняться без его участия – обычно на ЭВМ. Т.е. если вы раньше сами нажимали на кнопки, то теперь вы пишите программу, которую отдаете ЭВМ, и дальше уже ЭВМ «нажимает на кнопки» и командуем исполнителем:

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

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

 

                    способ                                                                                команды


                     записи                                                                          


                                                                                             обр. связь

 

Т.е. сначала человек  выбирает какой-то способ записи, какой-то язык и записывает алгоритм. Затем (это  на нашей схеме вообще не отражено)  этот алгоритм как-то попадает к ЭВМ. И, наконец, ЭВМ начинает командовать  Исполнителем в соответствии с алгоритмом, полученным от человека.

Именно поэтому необходимо развивать алгоритмическое мышление посредством изучения алгоритмов в  школьном курсе информатики.

 

 

2.3. Развитие алгоритмического мышления на уроках информатики в школе

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

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

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

Решение познавательных задач может включать в себя разное число промежуточных этапов решения (подзадач). Их количество зависит не только от содержания задачи, но и от индивидуальных предпочтений субъекта в использовании тех или иных средств. В процессе решения промежуточных подзадач, ведущих к цели, ситуация может изменятся, поэтому каждый последующий акт приходится осуществлять в условиях, отличных от первоначальных. Исходя из вышеописанного, необходимо формировать у учащихся такой стиль мышления, который будет способствовать правильной ориентировке в выборе исходной информации и средств её обработки, грамотного их использования с последующим анализом полученных данных. Развитие такого мышления представляет самостоятельную ценность. Основные этапы решения задач с использованием ЭВМ согласно алгоритмическому стилю мышления обладают специфическими  особенностями, отражающимися на порядке и результативности каждого этапа решения задачи. Формирование мышления может способствовать образованию у субъекта системы обобщённых стратегий поиска решения задач, организации поиска необходимой информации и её структурирования, постановки задач, выбора средств, необходимых для разрешения поставленных задач, и грамотного их использования. Алгоритмический стиль мышления можно рассматривать как один из элементов информационной культуры современного человека, поскольку особую проблему в информатике составляет вопрос о распределении функциональных возможностей между человеком и компьютером.

 Простейший алгоритм, запрашивающий имя и затем приветствующий его обладателя.

 

алг Знакомство (арг лит Имя, резлит t) 

нач 

вывод "Как тебя зовут ?"  

ввод Имя 

t := "Привет, " + Имя + "!"    | "+" - операция сцепки 

вывод t

кон

Найти произведение цифр заданного целого четырехзначного числа.

 

алг Произведение цифр (арг цел Num, рез цел P)

нач цел i, j, k, l 

 Num := abs(Num)             | abs - абсолютная величина 

i := div(Num, 1000)         | i - первая цифра

                              | div - частное от деления с остатком 

j := mod(div(Num, 100), 10) | j - вторая цифра

                              | mod - остаток от деления с остатком  

k := mod(div(Num, 10), 10)  | k - третья цифра 

l := mod(Num, 10)           | l - четвертая цифра 

 P := i * j * k * l;

Кон

 

Вычислить сумму элементов числового массива  A = (a1 , a2 , ... , aN ).

алг Сумма (арг цел N, арг вещ

           таб A[1:N], рез вещ S) 

 дано N>0

нач цел i 

S:=0 

 нц для i от 1 до N

    S := S + A[i] 

 кц

кон

В баскетбольную  команду могут быть приняты ученики, рост которых превышает 170 см. Составьте  список кандидатов в команду из учеников класса.

алг Баскетбол (арг цел N, арг лит таб Фам[1:N], арг вещ

               таб Рост[1:N], рез лит таб Канд [1:N] )

нач цел i, k 

 k:=0 

 нц для i от 1 до N | запись фамилий кандидатов в таблицу Канд

    если Рост[i]>170

      то k:=k+1; Канд [k] := Фам [i]

    все 

 кц 

 если k=0

    то вывод "В КЛАССЕ НЕТ КАНДИДАТОВ В КОМАНДУ."

    иначе нц для i от 1 до k

            вывод Канд [i]

          кц 

все

кон

    1. Диагн<span class="dash

Информация о работе Алгоритмы и алгоритмизация в школьном курсе информатики