Вопрос 14 Учебные исполнители.pptx
- Количество слайдов: 26
«Введение понятия «Алгоритмизация» с помощью учебных исполнителей»
Алгоритмизация Алгоритм – последовательность команд управления работой исполнителя Исполнитель алгоритма (характеристики): назначение, среда, режим работы, система команд – СКИ Свойства алгоритма: понятность, точность, конечность, дискретность, массовость. Алгоритмы работы «в обстановке» . Алгоритмы работы с величинами. Величина: имя, значение, тип. Базовые алгоритмические структуры. Язык описания алгоритмов: блок-схемы, учебный алгоритмический язык.
Алгоритм — понятное и точное предписание исполнителю выполнить конечную последовательность команд, приводящих от исходных данных к искомому результату. Данные Алгоритм: 1 -я команда 2 -я команда ………………. . N-я команда Исполнитель СКИ Результат Схема функционирования исполнителя алгоритмов Центральным объектом в этой системе является ИСПОЛНИТЕЛЬ алгоритмов. Исполнитель — это тот объект (или субъект), для управления которым составляется алгоритм. Основной характеристикой исполнителя, с точки зрения управления, является система команд исполнителя (СКИ). Это конечное множество команд, которые понимает исполнитель, т. е. умеет их выполнять.
Свойства алгоритма. 1) Понятность. Алгоритм может включать в себя только команды, входящие в СКИ. 2) Точность. Всякая команда должна быть сформулирована так, чтобы определить однозначное действие исполнителя. 3) Работа исполнителя состоит в последовательном выполнении команд алгоритма. Отсюда следует вывод о возможности создания автоматических исполнителей. 4) Конечность. Исполнение алгоритма и, следовательно, получение искомого результата должно завершиться за конечное число шагов. Свойство конечности называют еще результативностью алгоритма. 5) Дискретность состоит в том, что команды алгоритма выполняются последовательно, с точной фиксацией моментов окончания выполнения одной команды и начала выполнения следующей (это свойство можно не выделять, поскольку требование последовательного выполнения команд заложено в определении алгоритма). 6) Свойство массовости выражается в том, что алгоритм единым образом применяется к любой конкретной формулировке задачи, для решения которой он разработан.
Основные типы учебных алгоритмических задач. Для закрепления основных понятий, связанных с определением алгоритма полезно рассмотреть с учениками несколько заданий следующего содержания: 1. выполнить роль исполнителя: дан алгоритм, формально исполнить его; 2. определить исполнителя и систему команд для данного вида работы; 3. в рамках данной системы команд построить алгоритм; 4. определить необходимый набор исходных данных для решения задачи. Методика обучения алгоритмизации на учебных исполнителях, работающих «в обстановке» Изучаемые вопросы: 1. Основные требования к учебным исполнителям алгоритмов. 2. Описание архитектуры учебного исполнителя. 3. Типовые учебные задачи. 4. Способы описания алгоритмов.
Традиционно применяемым дидактическим средством в этом разделе являются учебные исполнители алгоритмов. Подходит любой исполнитель, который удовлетворяет следующим условиям: 1. это должен быть исполнитель, работающий «в обстановке» ; 2. этот исполнитель должен имитировать процесс управления некоторым реальным объектом (черепахой, роботом и др. ). 3. в системе команд исполнителя должны быть все структурные команды управления (ветвления, циклы); 4. исполнитель позволяет использовать вспомогательные алгоритмы (процедуры). Последние два пункта означают, что на данном исполнителе можно обучать структурной методике алгоритмизации. Главной целью раздела алгоритмизации является овладение учащимися структурной методикой построения алгоритмов. При описании любого исполнителя алгоритмов необходимо выделять следующие его характеристики: среда, режимы работы, система команд, данные. Совокупность таких характеристик можно назвать архитектурой исполнителя.
Среда Лого ( исполнитель Черепашка) Архитектура исполнителя. Строка меню Редактирование Запуск программы Поле текста программы Меню выбора команды Палитра (выбор цвета) Поле рисунка Режим работы — это определенное состояние учебного исполнителя, в котором могут выполняться определенные действия.
Среда Лого ( исполнитель Черепашка) 1. Режим программного управления. Подрежимы: • программирование: набор программы на программном поле; • исполнение: работа Черепашки по заданной программе. 2. Режим работы с файлами. В этом режиме можно сохранить программу в файле, прочитать программу из файла в поле программы, сохранить рисунок в файле, распечатать на принтере рисунок и программу. 3. Режим справки. Позволяет получить справку о работе системы и о способах редактирования программы. Система команд исполнителя (СКИ). ВПЕРЕД Перемещает черепашку вперед на заданное количество шагов. Пример: вперед 100 НАЗАД Перемещает черепашку назад на заданное количество шагов. Пример: назад 100 НАЛЕВО Поворачивает черепашку на заданный угол. Пример: налево 90 НАПРАВО Поворачивает черепашку на заданный угол. Пример: направо 90
Среда Лого ( исполнитель Черепашка) Система команд исполнителя (СКИ). МЕСТО Передвигает черепашку на указанное место. Пример: место 150, 200 ДОМОЙ Возвращает черепашку в центр экрана. Пример: домой ПОДНЯТЬ ПЕРО Поднимает перо у черепашки, после чего черепашка перестает оставлять след при движении. Пример: поднять перо ОПУСТИТЬ ПЕРО Опускает перо у черепашки, после чего черепашка оставляет след при движении. Пример: опустить перо ЦВЕТ Задает цвет пера черепахи. Примеры: цвет 14, цвет RGB(250, 130, 20) ПЕРО Задает толщину пера черепашки. Пример: перо 5
Среда Лого ( исполнитель Черепашка) Система команд исполнителя (СКИ). ЕСЛИ Условие. Пример1: если х=12 то вперед 100 Пример2: если х=12 то налево 90 вперед 100 конец условия ИНАЧЕ В операторе условия позволяет задавать команду или список команд, который выполняется в случае невыполнения условия. Пример1: если х=12 то вперед 100 иначе назад 50 Пример2: если х=12 то налево 90 вперед 100 иначе направо 30 назад 50 конец условия
Среда Лого ( исполнитель Черепашка) Система команд исполнителя (СКИ). ПОВТОРИТЬ Предназначена для многократного повторения указанной внутри фигурных скобок последовательности действий. Пример: повторить 15 {вперед 100 направо 137} ПЕРЕЙТИ К Команда перехода к указанной метке. После имени метки всегда ставят двоеточие. Метка ставится на отдельной строке. Пробел между именем метки и двоеточием не ставится. Пример: метка 1: вперед 3 направо 5 перейти к метка 1 ФОН Задает фону имя файла из папки "Фоны". Пример: фон = 02. jpg ОЧИСТИТЬ ФОН Очищает фон. Пример: очистить фон
Среда Лого ( исполнитель Черепашка) Система команд исполнителя (СКИ). ПЕРЕМЕННАЯ Объявляет имя переменной для выделения под нее памяти. Примеры: переменная x, переменная бум СОБЫТИЕ Предназначено для выполнения указанной последовательности действий в случае нажатия клавиши. Код клавиши можно узнать, вызвав специальное меню. Пример: событие нажата клавиша 38 вперед 10 конец события СПРЯТАТЬ Прячет черепаху. Пример: спрятать черепаху
Обучение алгоритмизации Базовые алгоритмические структуры. Следование Ветвление Цикл Методика структурного программирования. 1. суперпозиция базовых структур (последовательность, вложенность); 2. нисходящее проектирование сложных алгоритмов.
Обучение алгоритмизации Первыми заданиями должны быть задачи с целью получить определенный рисунок. Этими рисунками могут быть фигуры, узоры, буквы, построенные из вертикальных и горизонтальных отрезков. Обучение программированию для исполнителя нужно строить на последовательности решаемых задач. Очередность задач должна определяться следующими принципами: 1. от простого к сложному: постепенное усложнение заданий 2. новизна: каждая задача вносит какой-то новый элемент знаний (новая команда, новый прием программирования); 3. наследование: следующая задача требует использования знаний, полученных при решении предыдущих задач.
Примеры заданий Задача 1. Начертить квадрат, если сторона квадрата длиной в 100 черепашьих шагов. вперед 100 налево 90 В этой последовательности 4 раза повторяется группа команд ВПЕРЕД 100 НАЛЕВО 90. Чтобы не писать одни и те же команды четыре раза подряд, познакомимся с еще одной командой, которую знает черепашка, - командой ПОВТОРИТЬ. Программа, рисующая квадрат, будет выглядеть так : повторить 4 { вперед 100 налево 90 } Для того чтобы увидеть выполнение команд в более медленном режиме, можно воспользоваться командой ПАУЗА, после которой необходимо указать время в миллисекундах. В одной секунде - 1000 миллисекунд. То есть, если мы хотим сделать задержку в полсекунды, следует дать команду пауза 500.
Примеры заданий Задача 2. Нарисовать равносторонний треугольник , если его сторона 100 черепашьих шагов. При рисовании треугольника черепашка должна сделать три одинаковых поворота и вернуться в начальное положение. Следовательно, каждый из углов поворота равен 360 : 3 = 120 Напишем программу: повторить 3 { вперед 100 налево 120 } Можно легко научить черепашку рисовать правильный пятиугольник. Каждый раз черепашка поворачивается на угол, равный 72 градусам (360: 5=72). Шестиугольник (360: 6=60). Примеры узоров. 1) повторить 18 { вперед 200 налево 100 } 2) повторить 50 { вперед 200 налево 145 }
Примеры заданий Объявление переменных. Переменные объявляют с помощью ключевого слова ПЕРЕМЕННАЯ, после которого пишут имя переменной, каждая переменная объявляется в отдельной строке. Пример: переменная x переменная БУМ переменная моё_число Присваивание Для присваивания значений переменным служит знак "=". Выражение, стоящее справа от знака присваивания, вычисляется, и полученное значение присваивается переменной, стоящей слева от знака присваивания. При этом предыдущее значение, хранящееся в переменной, стирается и заменяется на новое. Оператор "=" не следует понимать как равенство. Например, выражение a = 5 следует читать как «присвоить переменной a значение 5» . Примеры: x = 5 + 3 b = a + 4 b = b + 2 c = b * b + 3 * b
Примеры заданий Арифметические записываются в выражениях следующим образом: + (плюс) - (минус) * (умножение) / (деление) Переменные в качестве аргументов Переменные или выражения, состоящие из переменных, могут использоваться в качестве аргументов различных команд. Пример: цвет х вперед a + 50 Случайные числа С помощью ключевого слова СЛУЧАЙНЫЙ можно получать случайные значения, которые представляют из себя дробные числа, лежащие в диапазоне от 0 до 1. Если нам требуется случайное число в диапазоне от 0 до 100, то возвращаемое значение нужно умножить на 100. Если, к примеру, нам потребуется случайное значение в диапазоне от 40 до 70, то возвращаемое значение нужно умножить на 30 и прибавить к результату 40.
Примеры заданий Задача 3. Написать программу, создающую абстрактное компьютерное искусство. повторить 500 {перо случайный * 10 цвет случайный * 15 вперед случайный * 100 налево случайный * 360}
Примеры заданий Команда вывода Чтобы узнать число, хранящееся в переменной, его можно вывести на экран с помощью команды ПИШИ. Пример: пиши х С помощью команды ПИШИ можно писать на экране не только значения переменных, но и различные слова. Чтобы вывести на экран какие-либо слова, их следует взять в кавычки. Пример: пиши "Здравствуй, мир!» В команде ПИШИ можно сочетать вывод значений переменных и печать какихлибо слов. Для этого их необходимо соединить с помощью соединяющего знака "+ «. Пример: пиши "Ответ: " + х
Примеры заданий Задача 4. (Цикл со счетчиком) Нарисовать спираль которая будет раскручиваться из центра, все более и более увеличиваясь в размерах. При этом угол, на который должна поворачиваться черепашка после того, как нарисует очередной сегмент спирали, будет все время одинаковым. Для того, чтобы спираль "раскручивалась", черепашке нужно будет каждый раз идти вперед хотя бы на шаг больше, чем в предыдущий. Мы можем написать следующую программу: переменная х повторить 255 { х = х + 1 цвет RGB( х, х, х) вперед х направо 75 }
Примеры заданий Для организации циклов со счетчиком существует специальная форма записи. Попробуем написать предыдущую программу, используя эту форму. переменная х повторить для х = 1 до 255 { цвет RGB( х, х, х) вперед х направо 75 } Запись "для х = 1 до 255» означает, что в качестве переменной для счетчика используется переменная "х". Сначала ей присваивается начальное значение "х = 1". Затем указывается, до какого значения х повторять цикл. Циклы со счетчиком чаще всего используются, когда заранее известно количество повторений, которые должны быть выполнены. Еще одним параметром для цикла со счетчиком является ШАГ. Это необязательный параметр, но иногда он может быть очень полезным. Если этот параметр не задан, то переменная, используемая в качестве счетчика, на каждом шаге цикла увеличивается на 1. А если шаг задан, то переменная изменяется на величину шага.
Примеры заданий Задача 5. (Цикл со счетчиком) Найти сумму четных чисел, лежащих в интервале от 100 до 200. переменная х переменная S повторить для х = 100 до 200 шаг 2 { S = S + х } пиши S Задача 6. (Цикл с условием) В банк положили 1000 рублей под проценты. Каждый месяц на эту сумму начислялось 5%. Причем на следующий месяц проценты начислялись уже на сумму вместе с начисленными в предыдущий месяц процентами (процент на процент). Через сколько месяцев сумма на счету достигла 2000 рублей? Для решения данной задачи лучше всего применить цикл с условием. Такой цикл повторяется, пока выполняется условие, заданное в команде повторить. переменная S переменная m S = 1000 повторять пока S < 2000 {S=S+S*0. 05 m=m+1} пиши m
Примеры заданий Если необходимо выполнить разные действия в зависимости от того, выполняется условие или нет, применяют следующую конструкцию: если <условие> то <команда 1> иначе <команда 2> При выполнении условия будет выполнена <команда 1>, если же условие не выполнится, то будет выполнена <команда 2>. Задача 7. Выдержит ли мост, если по нему проедет грузовик весом 2000 кг. , на который погрузили 50 коробок весом 80 кг. каждая? Предел нагрузки моста - 5000 кг. переменная m m = 2000 + 50 * 80 если m > 5000 то пиши "не выдержит" иначе пиши "выдержит"
Примеры заданий Математические функции Черепашки: ^ возвести в степень % остаток при целом делении двух чисел int целая часть числа sin синус cos косинус tan тангенс atn арктангенс log логарифм Для построения графиков функций удобно воспользоваться командой ТОЧКА. Команда точка ставит точку в месте с заданными координатами. Пример: цвет 14 перо 5 точка 200, 100 Задача 8. Составим программу построения графика функции y = x * Sin (x), используя для этого три переменные: x и y - для кординат; t - для приращения координаты по оси X. переменная x переменная y переменная t перо 3 спрятать черепаху t = -20 повторить для x = 1 до 800 { t = t + 0. 05 y = Sin(t) * t * 15 + 300 точка x, y }
Требования к знаниям и умениям учащихся Учащиеся должны знать: 1. что такое алгоритм; 2. в чем состоят основные свойства алгоритма; 3. основные алгоритмические конструкции: следование, ветвление, цикл; структуры алгоритмов; 4. назначение вспомогательных алгоритмов; технологии построения сложных алгоритмов: метод последовательной детализации; 5. основные свойства величин в алгоритмах обработки информации: что такое имя, значение величины; смысл присваивания. Учащиеся должны уметь: 1. понимать описания алгоритмов на учебном алгоритмическом языке; 2. выполнять трассировку алгоритма для известного исполнителя; 3. составлять несложные линейные, ветвящиеся и циклические алгоритмы управления одним из учебных исполнителей; 4. выделять подзадачи; определять и использовать вспомогательные алгоритмы.
Вопрос 14 Учебные исполнители.pptx