Этапы решения задач с помощью компьютера

Разделы: Информатика


Цели урока.

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

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

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

Задачи урока:

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

Тип урока: комбинированный урок: повторение, обобщение пройденного материала, изучение и закрепление нового материала.

Методы обучения: лекция, объяснительно-иллюстративный, фронтальный опрос, исследование, тестирование, использование интерактивных методов.

Оборудование: компьютер, интерактивная доска, таблицы, презентации, схемы, учебник.

Программное обеспечение: Операционная система Windows 7, среда программирования Free Pascal, тестирующая среда Knowing, операционная система Naulinux, образовательная программная оболочка kTurtle.

Дидактический материал: карточки с заданиями, тест в тестирующей среде Knowing.

План урока

  1. Организационный момент (1 минута).
  2. Постановка целей и задач урока (2 минуты).
  3. Повторение пройденного материала: “Мозговой штурм” (10 минут).
  4. Обобщение пройденного и изучение новой темы “Этапы решения задач с помощью компьютера” (8 минут).
  5. Решение задачи в среде программирования Free Pascal, используя этапы решения задач с помощью компьютера (5 минут).
  6. Проверка знаний учащихся (тестирование на компьютере в среде Knowing) (5 минут).
  7. Повторение принципа работы и выполнение упражнения на компьютере в образовательной программной оболочке для изучения языка программирования Лого kTurtle (7 минут).
  8. Подведение итогов и анализ работы на уроке (оценки) (5 минут).
  9. Домашнее задание с объяснением (2 минуты).

Ход урока

1. Организационный момент.

2. Постановка целей и задач урока.

3. Повторение пройденного материала: “Мозговой штурм”.

1) Что такое алгоритм и его исполнители?

Алгоритмом - называется строго определенная последовательность действий, выполнение которых приводит к заранее предполагаемому результату.

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

Исполнителем называется тот, кто исполняет алгоритм. Исполнителем алгоритма может быть человек, автомат, компьютер.

2) От какого слова произошло название алгоритма?

Название “алгоритм” произошло от латинской формы имени среднеазиатского математика аль-Хорезми – Algorithmi.

3) Назовите свойства алгоритмов?

Дискретность, результативность, массовость, детерминированность, выполнимость и понятность.

4) Какие существуют способы записи алгоритмов.

Для записи алгоритмов можно использовать разные способы:

словесный - каждое действие алгоритма описывается словами;

графический - действия алгоритмов представлены в виде картинок;

табличный - все шаги алгоритма записываются в таблицу;

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

программа – алгоритм, записанный на “понятном” компьютеру языке программирования.

5) Рассказать об основных структурах алгоритмов.

Алгоритм, в котором команды выполняются последовательно одна за другой, называется линейным алгоритмом.

В алгоритмической структуре “ветвление” в зависимости от истинности или ложности условия выполняется одна или другая серия команд.

В алгоритмической структуре “цикл” серия команд (тело цикла) выполняется многократно.

6) Что такое программа?

Программа – последовательность стандартных операторов языка программирования, использующих допустимые данные.

7) Назовите основные этапы разработки линейной программы в среде программирования Pascal.

Основные этапы разработки программы в среде Паскаль.

1. Ввод и редактирование текста на языке программирования.

2. Сохранение текста программы на диске.

3. Запуск программы на исполнение.

4. Отладка программы.

5. Тестирование программы.

На интерактивной доске показывается изображение “Примеры выполнения линейной программы на Паскале”.

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

Задания (Приложение)

Задание 1. Найти соответствие между понятиями в 1 колонке и определениями во 2 колонке и поставить стрелки. (Карточка оранжевого цвета)

Задание 2. Рассмотреть схемы структур алгоритмов и выявив соответствие между схемой и её названием, поставить стрелки. (Карточка желто-зелёного цвета)

Задание 3. Рассмотреть рисунки примеров алгоритмов, выявив соответствие между типом алгоритма и рисунком, поставить стрелки. (Карточка ярко-розового цвета)

4. Обобщение пройденного и изучение новой темы “Этапы решения задач с помощью компьютера”.

Задание 4. Поставить предполагаемые порядковые номера выполнения этапов. (Карточка ярко-жёлтого цвета)

После выполнения задания на экране появляется готовая схема: “Этапы решения задач с помощью компьютера”.

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

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

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

В случае большого числа параметров, ограничений, возможных вариантов исходных данных модель явления может иметь очень сложное математическое описание (правда, реальное явление еще более сложно), поэтому часто построение математической модели требует упрощения требований задачи. Необходимо выявить самые существенные свойства объекта, явления или процесса, закономерности; внутренние связи, роль отдельных характеристик. Выделив наиболее важные факторы, можно пренебречь менее существенными.

Итак, создавая математическую модель для решения задачи, нужно: выделить предположения, на которых будет основываться математическая модель; определить, что считать исходными данными и результатами; записать математические соотношения, связывающие результаты с исходными данными.

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

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

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

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

Таким образом, тестирование и отладка включают в себя синтаксическую отладку; отладку семантики и логической структуры программы; тестовые расчеты и анализ результатов тестирования; совершенствование программы.

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

5. Решение задачи в среде программирования Free Pascal, используя этапы решения задач с помощью компьютера.

I этап (постановка задачи)

Задача № 5. Рассчитать расстояние полёта ракеты Гагарина (1 оборот вокруг Земли), если экваториальный радиус Земли R 6378 км, высота полёта ракеты над Землёй H 300 км.

II этап (математическая модель)

III этап (составление алгоритма)

IV этап (программирование)

program polet;

var r, h,с: real;

begin

readln (r);

readln (h);

с:=2*pi*(r+h);

writeln (с);

end.

V этап (отладка и тестирование программы)

VI этап (Итоги и анализ результатов)

Анализ решения задачи с использованием этапов (река проблем).

Обсуждение и запись на доске трудностей, возникших при решении данной задачи.

6. Проверка знаний учащихся (тестирование на компьютере в среде Knowing).

Задание № 6. (Тестирование). (Карточка бледно-зелёного цвета)

  1. Что не является алгоритмом?
  2. А) расписание уроков Б) посадка дерева В) измерение температуры Г) кипячение воды

  3. Кто или что является исполнителем алгоритма открывания двери?
  4. А) человек Б) ключ В) дверь Г) замочная скважина

  5. Какой из алгоритмов является линейным?
  6. А) сбор яблок Б) рисование лучей солнца В) пришивание нескольких пуговиц Г) включение компьютера

  7. Какого элемента нет в блок-схеме линейного алгоритма?
  8. А) начало Б) конец В) команда Г) условие

  9. Какая команда в среде kTurtle не относится к линейной программе?
  10. А) вперёд Б) повтори В) назад Г) направо

  11. Какой команды нет в линейной программе на языке Pascal?
  12. А) program Б) var В) end Г) while

  13. Integer – это переменная … типа.
  14. А) целого Б) вещественного В) строкового Г) логического

  15. Real – это переменная … типа
  16. А) целого Б) вещественного В) строкового Г) логического

  17. Вместо знака умножения на Паскале пишется
  18. А) точка Б) звёздочка В) тире Г) косая линия

  19. Вместо знака деления на Паскале пишется
  20. А) точка Б) звёздочка В) тире Г) косая линия

7. Повторение принципа работы и выполнение упражнения на компьютере в образовательной программной оболочке для изучения языка программирования Лого kTurtle (операционная система Naulinux).

KTurtle обладает замечательными особенностями, которые позволят начать программировать легко и непринуждённо.

  • Встроенный интерпретатор Лого устраняет необходимость скачивать и устанавливать дополнительные программы.
  • Выполнение можно замедлить и остановить в любое время.
  • Мощный редактор команд Лого с подсветкой синтаксиса, нумерацией строк и многим другим.
  • Холст с результатами работы программы может быть сохранен как изображение или распечатан.
  • Холст имеет функцию переброса Черепашки на другой край, когда она достигнет первого.
  • Контекстная подсказка по всем командам Лого, которая вызывается простым нажатием F2.
  • Все команды Лого могут быть переведены на любой язык.
  • Имеется диалог с сообщениями об ошибках, облегчающий процесс отладки.

Задание № 7. Составить и выполнить программу для рисования ракеты на компьютере в образовательной программной оболочке kTurtle. (Карточка голубого цвета)

Решение:

сброс

иди 70, 220

вперёд 40

направо 45

вперёд 28

налево 45

вперёд 90

направо 45

вперёд 42

направо 90

вперёд 42

направо 45

вперёд 90

налево 45

вперёд 28

направо 45

вперёд 40

направо 90

вперёд 30

направо 45

вперёд 28

налево 90

вперёд 28

направо 45

вперёд 30

8. Подведение итогов и анализ работы на уроке (оценки).

Учитель заполняет таблицу “Рейтинг учащихся”, по итогам рейтинга выставляются оценки каждому учащемуся за урок.

9. Домашнее задание с объяснением. (Карточка розового цвета)

Задача № 8.

Найти расстояние между точками А(х1, у1) и В(х2, у2), если х1=15, у1= _6, х2= _3, у2=4.

Задача № 9.

Вычислить 10-й член (a10) и сумму 10-ти членов (S10) арифметической прогрессии, если известно, что a1=35 и d=4.

Используемая литература

  1. Н.Д. Угринович, 9 класс, “Информатика и ИКТ”, Бином, 2010 г.
  2. Горстко А.Б., Чердынцева М.И. "Информатика для школьников и всех-всех-всех", Ростов-на-Дону, "Феникс", 2006.
  3. Лапчик М.П., “Вычисления. Алгоритмизация. Программирование”, М., “Просвещение”, 1998.
  4. А. Симанович. Практическая информатика. М., 2001 г.