Планирование уроков на учебный год (учебник ФГОС Л.Л. Босова, А.Ю. Босова)



Урок 10
§2.1 Решение задач на компьютере






Ключевые слова:

• постановка задачи
• формализация
• алгоритмизация
• программирование
• отладка и тестирование
• выполнение расчётов

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

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


Решение задачи с использованием компьютера включает этапы, представленные на рис. 2.1.

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

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

На втором этапе описательная информационная модель формализуется, т. е. записывается с помощью некоторого формального языка.

Для этого требуется:

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

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

На четвёртом этапе алгоритм записывается на одном из языков программирования. Вы учитесь записывать программы на языке Паскаль.

На пятом этапе осуществляется отладка и тестирование программы.

Отладка программы — это процесс проверки работоспособности программы и исправления обнаруженных при этом ошибок.

Ошибки могут быть связаны с нарушением правил записи программы на конкретном языке программирования. Их программисту помогает найти используемая система программирования; она выдаёт на экран сообщения о выявленных ошибках.

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

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

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

Рассмотренные этапы являются основой разработки современного программного обеспечения, но при этом называются они несколько иначе (рис. 2.2).

Рис. 2.2. Этапы разработки программного обеспечения

На этапе подготовки разработчик уточняет у заказчика требования к программному продукту, осуществляет предварительное планирование этапов работ, сроков, ресурсов и стоимости разработки.

На этапе проектирования составляются требования к программе, определяются её технические характеристики, выбираются алгоритмы реализации программы.

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

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

2.1.2. Задача о пути торможения автомобиля


Рассмотрим последовательность этапов решения задачи на компьютере (см. рис. 2.1) на примере простой задачи.

Водитель автомобиля, движущегося с некоторой постоянной скоростью, увидев красный свет светофора, нажал на тормоз. После этого скорость автомобиля стала уменьшаться каждую секунду на 5 метров. Требуется найти расстояние, которое автомобиль пройдёт до полной остановки.

Первый этап. Дано:

υ0x — начальная скорость;

υх — конечная скорость (равна нулю, так как автомобиль остановился);

ах — ускорение (равно -5 м/с2).

Требуется найти: sx — расстояние, которое автомобиль пройдёт до полной остановки.

Второй этап. В данной ситуации мы имеем дело с прямолинейным равноускоренным движением тела. Формула для перемещения при этом имеет вид:

Упростим эту формулу с учётом того, что конечная скорость равна нулю: . При аx = -5 м/с2 получим: (при условии задания скорости в метрах в секунду и вычислении пути в метрах).

Третий этап. Представим алгоритм решения задачи в виде блок-схемы:

Четвёртый этап. Запишем данный алгоритм на языке программирования Паскаль:

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

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

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

САМОЕ ГЛАВНОЕ


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

1) постановка задачи;

2) формализация;

3) алгоритмизация;

4) программирование;

5) отладка, тестирование;

6) выполнение расчётов.

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

Вопросы и задания


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

2. Перечислите основные этапы решения задачи с использованием компьютера.

3. Что происходит на этапе постановки задачи? Что является результатом этого этапа?

4. Что происходит на этапе формализации? Что является результатом этого этапа?

5. Что происходит на этапе алгоритмизации? Что является результатом этого этапа?

6. Что происходит на этапе программирования? Что является результатом этого этапа?

7. Что происходит на этапе компьютерного эксперимента? Что является результатом этого этапа?

8. Какой этап решения задачи на компьютере, по вашему мнению, является наиболее трудоёмким?

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

10. Как правило, сложные практические задачи решаются большими коллективами разработчиков. Отдельные группы в этих коллективах специализируются на выполнении одного или нескольких этапов решения задачи. Нужно ли в таком случае им иметь представление обо всех этапах решения задачи с использованием компьютера? Обоснуйте свою точку зрения.

11. Может ли пригодиться в жизни представление об этапах решения задачи с использованием компьютера? Обоснуйте свою точку зрения.

12. В аэробусе, вмещающем 160 пассажиров, три четверти мест находятся в салонах экономического класса и одна четверть мест — в салоне бизнес-класса. Стоимость билета в салоне бизнес-класса составляет х рублей, что в два раза выше стоимости билета в салонах экономического класса. Разработайте программу, которая вычислит сумму денег, полученную авиакомпанией от продажи билетов на этот рейс, если известно, что остались нераспроданными а билетов бизнес-класса и b билетов экономического класса. Выделите все этапы решения этой задачи и опишите свои действия на каждом из них.

13. Уличный продавец газет получает а рублей с продажи каждой из первых 50 газет. С продажи каждой из последующих газет он получает на 20% больше.

Разработайте программу, которая вычислит заработок продавца, если он продаст за день 200 газет. Зафиксируйте свои действия на каждом из этапов решения этой задачи.

Электронное приложение к уроку




Cкачать материалы урока







Наверх