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

Автор работы: Пользователь скрыл имя, 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.
  • Эвристический алгоритм  (от греческого слова “эврика”) – это такой алгоритм, в котором достижение конечного результата программы действий однозначно не предопределено, так же как не обозначена вся последовательность действий, не выявлены все действия исполнителя. К эвристическим алгоритмам относят, например, инструкции и предписания. В этих алгоритмах используются универсальные логические процедуры и способы принятия решений, основанные на аналогиях, ассоциациях и прошлом опыте решения схожих задач 6.
  • Линейный алгоритм – набор команд (указаний), выполняемых последовательно во времени друг за другом.
  • Разветвляющийся алгоритм – алгоритм, содержащий хотя бы одно условие, в результате проверки которого ЭВМ обеспечивает переход на один из двух возможных шагов.
  • Циклический алгоритм – алгоритм, предусматривающий многократное повторение одного и того же действия (одних и тех же операций) над новыми исходными данными. К циклическим алгоритмам сводится большинство методов вычислений, перебора вариантов.

Цикл программы –  последовательность команд (серия, тело цикла), которая может выполняться  многократно (для новых исходных данных) до удовлетворения некоторого условия.

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

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

Построение сложных алгоритмов с помощью вспомогательных алгоритмов имеет много общего с возведением зданий. Сложные алгоритмы, как и дома, строятся из блоков, роль которых играют вспомогательные алгоритмы. Рассмотрим алгоритм построения изображения домика с применением вспомогательных алгоритмов.

алг «Домик»

нач

Стена с дверью

крыша

кон

алг «Стена с дверью»

нач

стена с окном

дверь

кон

      


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

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

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

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

 

Общая форма записи вспомогательных  алгоритмов:

алг «<название подзадачи>»

арг <список аргументов>

рез <список результатов>

нач

<план действий>

кон

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

1.4. Методы изображения алгоритмов

На практике наиболее распространены следующие формы  представления алгоритмов:

    • словесная (записи на естественном языке);
    • графическая (изображения из графических символов);
    • псевдокоды (полуформализованные описания алгоритмов на условном алгоритмическом языке, включающие в себя как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и др.);
    • программная (тексты на языках программирования).

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

Данный способ получил  значительно меньшее распространение  из-за его многословности и отсутствия наглядности.

Словесный способ не имеет широкого распространения по следующим причинам:

  1. такие описания строго не формализуемы;
  2. страдают многословностью записей;
  3. допускают неоднозначность толкования отдельных предписаний.

Блок-схема  алгоритма

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

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

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

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

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

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

Специальные геометрические фигуры в блок-схеме:

Начало / конец.

Вычисление команд.

Условия.

Ввод / вывод данных.


 

Программное представление алгоритма

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

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

Следовательно, язык для  записи алгоритмов должен быть формализован. Такой язык принято называть языком программирования, а запись алгоритма на этом языке — программой для компьютера 11.

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

алг <«название»>

нач

.. <действие 1>

..<действие 2>

..<действие 3>

кон

Другие структуры записываются по особому алгоритму.

В алгоритмах выбор действий записывается с использованием слов если, то, иначе, и конец если (либо в сокращенной форме кесли). Описание выбора действий начинается со слова если, а для указания конца вариантов используется слово кесли. После слова если записывается условие выбора, а слово то служит разграничением между условиями выбора и соответствующей группой действий. Запись следующей группы действий начинается со слов иначе если (сокращенно инес) либо со слова иначе – для последней группы выбираемых действий 12.

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

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

если <условие> то

<действия>

кесли


 

Правила выполнения условных действий: эти действия выполняются, только если окажется истинным условием, указанное после слова если. В противном случае эти действия не выполняются вовсе.

Второй способ – группирование  нескольких вариантов действий с  различными условиями их выбора.

Выбираемые действия:

если <условие> то

<действие 1>

иначе

<действие 2>

кесли


 

Правила выполнения: действие 1 выполняется тогда и только тогда, когда соблюдается условие. Действие 2 выполняется, только если условие  не соблюдается.

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

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

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

Способы решения многих сложных задач часто основано на повторении одних и тех же действий вплоть до достижения некоторой цели. Организация повторений в алгоритмах называется циклом.

Описание циклов в  алгоритмах строится по следующим правилам: повторяемые действия заключаются  между словами цикл и конец  цикла (сокращенно кцикл).

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

Цикл со счетчиком:

от k = 1 до n

цикл

<действие>

кцикл


 

Правила выполнения цикла  со счетчиком: До начала цикла счетчик  получает начальное значение k = 1. Далее выполняются <действие>, а затем проверяется, достиг ли счетчик конечного значения. Если счетчик еще не достиг конечного значения, то он увеличивается на единицу и <действие> выполняется еще раз. Если же счетчик уже достиг конечного значения, то выполнение цикла завершается.

Выполнение пока-цикла:

пока <условие> цикл

<действие>

кцикл


 

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

1.5. Роль алгоритмов, программирования и решения задач  в школьном курсе информатики.

Наука информациология  рассматривает информатику как часть фундаментальной науки, касающейся искусственной информации, реализуемой в персональном компьютере. Такое понимание информатики определяет круг вопросов, которые рассматриваются в процессе ее изучения. В первую очередь это кодирование информации в концепции ее представления в компьютере и общие подходы к структурированию любой искусственной информации, подлежащей хранению, обработке и пересылке. Традиционно в информатику включают некоторые разделы логики, но ограничиваются при этом рассмотрением логических операций. Поскольку компьютер представляет собой устройство, моделирующее нашу умственную деятельность, его работа подчиняется тем же законам, что и наше мышление. Поэтому наука, которая изучает законы истинного мышления, — логика присутствует в каждом аппаратном и программном элементе компьютера 13. Точнее, нет ни одного элемента компьютера, существующего вне логики. Двоичная система кодирования используется в вычислительных устройствах уже более двух столетий, логика существует более двух тысяч лет. Только эти два положения уже подтверждают фундаментальность науки информатики. Развитие информационных технологий происходит в рамках фундаментальной информатики и должно служить иллюстрацией ее использования в практической деятельности. Поэтому в основе своей содержание курса информатики не должно зависеть от имеющихся технических и программных средств. Безусловно, чем лучше средства информационных технологий, тем больше у преподавателя возможности продемонстрировать на практике законы науки информатики.

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