Тема урока: «Алгоритмы и величины»
Цели урока:
образовательные: дать определения понятиям данные, величины, этапы решения задач;
развивающие: развивать логическое мышление, память, внимательность и совершенствовать умение работать за компьютером;
воспитательные: воспитывать интерес к программированию, к предмету.
Тип урока: изучение нового материала
Форма урока: синтетическая.
Место урока в учебной теме: первичный
Методы и методические приемы:
1 Информационно - рецептивный:
а) словесный: рассказ - объяснение, описание, беседа,
б) наглядный: иллюстрации, демонстрация, ТСО.
Приемы обучения: изложение информации, объяснение, активизация внимания и мышления, получение из текста и иллюстраций новых знаний, работа с раздаточным материалом.
2. Репродуктивный.
Приемы обучения: подача материала в готовом виде, конкретизация и закрепление уже приобретенных знаний.
3. Визуальный: составление логических цепочек.
4. Суггестивный: применение различных видов искусства.
5. Перцептивный (восприятие и связь с жизнью):
6. Релаксопедический: психологическая разгрузка.
Межпредметные связи: математика, экономика
Материалы и оборудование: флипчарт, проектор, ноутбук
Основные понятия и термины: величины, данные
Ход урока
Организационный момент
Актуализация опорных знаний
Фронтальный опрос
Что такое алгоритм?
Что такое программа?
Виды алгоритмов?
Изучение нового материала
На данном этапе давайте рассмотрим основные этапы решения задач на компьютере.
Решение задачи на компьютере - это процесс автоматического преобразования информации в соответствии с поставленной целью.
Под процессом решения задачи на ЭВМ надо понимать совместную деятельность человека и компьютера. Этот процесс остается пока достаточно сложным и трудоемким, поэтому представляется в виде нескольких последовательных этапов. При этом на долю человека приходится творческая деятельность, а на долю машины - автоматическая обработка информации в соответствии с заданным ей алгоритмом.
Решение задач на ЭВМ состоит из следующих этапов:
Постановка задачи.
Это этап работы человека, хорошо представляющего предметную область задачи. Он должен:
определить цель решения задачи;
определить необходимый объем информации;
дать точную формулировку задачи;
предложить идею решения задачи;
описать исходные данные и указать способы их хранения;
определить форму выдачи результатов.
Построение математической модели.
Чтобы решить задачу, связанную с исследованием реального объекта, необходимо описать этот объект в математических терминах, связанных определенными соотношениями (формулами), то есть построить его математическую модель. Такая модель всегда идеализирует реальный объект, но она позволяет математически строго решить задачу его исследования. Этот этап выполняет человек, способный разработать математическое описание поставленной задачи. При этом он должен выполнить:
анализ похожих решённых задач;
анализ технических и программных возможностей;
анализ условий существования решения.
Разработка алгоритма.
Алгоритм решения задачи разрабатывается на основе построенной математической модели и представляет конечную последовательность предписаний (правил), которая определяет процесс преобразования исходных данных в результаты решения задачи. Алгоритм разрабатывается одним из существующих способов, чаще всего в виде блок-схемы. Этот этап выполняет человек, умеющий программировать. Уровень его квалификации определяет эффективность разработанного алгоритма.
Составление программы.
Этот этап также выполняет человек, умеющий программировать, так как программа - это один из способов
представления алгоритма с использованием языка программирования, наиболее удобного для решения данной задачи. Составление программы - это кодирование алгоритма для реализации его в компьютере.
Отладка и тестирование программы.
Отладка программы - это проверка ее на наличие технических, грамматических и, возможно, алгоритмических ошибок. Кроме того, отладка предполагает совершенствование (оптимизацию) программы. Ошибки в ходе отладки исправляют путем контрольного тестирования. Тесты (контрольные примеры) составляются так, чтобы проверить все возможные варианты работы алгоритма. Проверка осуществляется путем сравнения заранее известных результатов тестов с результатами, полученными компьютером. Этот этап - совместная работа программиста и машины.
Получение и анализ результатов.
После устранения всех ошибок, выявленных отладкой и тестированием, получают результаты решения поставленной задачи. Получение результатов может быть многократным в зависимости от смены исходных данных, поскольку решение должно быть универсальным для задач подобного класса. На этом этапе машина работает совместно с человеком, выдающим задание.
Необходимо отметить, что роль и вклад человека и компьютера на каждом из приведенных этапов решения задач постоянно меняются из-за стремительного прогресса в сфере вычислительной техники.
Данные и величины. Совокупность величин, с которыми работает компьютер, принято называть данными. По отношению к программе данные делятся на исходные, результаты (окончательные данные) и промежуточные (рис. 1), которые получаются в процессе вычислений.
Например, при решении квадратного уравнения ax2 + bx + с = 0 исходными данными являются коэффициенты а, b, с, результатами — корни уравнения х1, х2, промежуточным данным — дискриминант уравнения D = b2 — 4aс.
Для успешного освоения программирования необходимо усвоить следующее правило: всякая величина занимает свое определенное место в памяти ЭВМ (иногда говорят — ячейку памяти). Хотя термин «ячейка» с точки зрения архитектуры современных ЭВМ несколько устарел, однако в учебных целях его удобно использовать.
У всякой величины имеются три основных свойства: имя, значение и тип. На уровне команд процессора величина идентифицируется при помощи адреса ячейки памяти, в которой она хранится. В алгоритмах и языках программирования величины делятся на константы и переменные
Константа — неизменная величина, и в алгоритме она представляется собственным значением, например: 15, 34.7, k, true и т.д. Переменные величины могут изменять свои значения в ходе выполнения программы и представляются символическими именами — идентификаторами, например: X, S2, codl5. Любая константа, как и переменная, занимает ячейку памяти, а значение этих величин определяется двоичным кодом в этой ячейке.
Теперь о типах величин — типах данных. С понятием типа данных вы уже, возможно, встречались, изучая в курсе информатики базы данных и электронные таблицы. Это понятие является фундаментальным для программирования.
В каждом языке программирования существует своя концепция типов данных, своя система типов. Тем не менее, в любой язык входит минимально необходимый набор основных типов данных, к которому относятся: целый, вещественный, логический и символьный типы. С типом величины связаны три ее характеристики: множество допустимых значений, множество допустимых операций, форма внутреннего представления.
Типы констант определяются по контексту (т. е. по форме записи в тексте), а типы переменных устанавливаются в описаниях переменных.
Есть еще один вариант классификации данных — классификация по структуре. Данные делятся на: простые и структурированные. Для простых величин (их еще называют скалярными) справедливо утверждение: одна величина — одно значение, для структурированных: одна величина — множество значений. К структурированным величинам относятся массивы, строки, множества и т.д.
ЭВМ — исполнитель алгоритмов. Как известно, всякий алгоритм (программа) составляется для конкретного исполнителя в рамках его системы команд. О каком же исполнителе идет речь при обсуждении вопроса о программировании для ЭВМ? Ответ очевиден: исполнителем является компьютер. Точнее говоря, исполнителем является комплекс ЭВМ + Система программирования (СП). Программист составляет программу на том языке, на который ориентирована СП. Иногда в литературе такой комплекс называют виртуальной ЭВМ. Входным языком такого исполнителя является язык программирования Паскаль.
Независимо от того, на каком языке программирования будет написана программа, алгоритм решения любой задачи на ЭВМ может быть составлен из команд:
• присваивания;
• ввода;
• вывода;
• обращения к вспомогательному алгоритму;
• цикла;
• ветвления.
Для описания алгоритмов в дальнейшем мы будем использовать блок-схемы и учебный алгоритмический язык, применяемый в школьном курсе информатики.
Итог урока
Что такое величина? Чем отличаются переменные и постоянные величины?
Чем определяется значение величины?
Какие существуют основные типы величин в программирование?
Домашнее задание
§ 9 стр. 64 – 69, кроссворд, ребус