Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика Учебник НГТУ Семестр 2.docx
Скачиваний:
87
Добавлен:
27.03.2015
Размер:
4.01 Mб
Скачать

31.0. Введение

30.0. Введение

31.1. Постановка и формализация задачи

Для того чтобы реализовать некоторый алгоритм на компьютере необходимо пройти несколько этапов:

  • поставить и формализовать задачу,

  • разработать алгоритм задачи,

  • составить программу на языке программирования,

  • отладить программу,

  • провести анализ результатов.

30.0. Введение

31.1. Постановка и формализация задачи

31.1. Постановка и формализация задачи

31.0. Введение

31.2. Разработка алгоритмов решения задачи

Постановка и формализация задачи состоит из следующих этапов:

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

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

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

На начальном этапе развития информационных технологий каждый из этих этапов выполняли люди с ответствующей специализацией. Математик формализовал задачу, программист разрабатывал программу, результаты работы программы оценивал специалист в той области знаний, для которой разрабатывалась программа. Каждый из этих этапов является составной частью изучения предмета информатики. За рубежом эта область знаний называется компьютерной наукой (computer science or computing science) и рассматривается как один из разделов математики.

31.0. Введение

31.2. Разработка алгоритмов решения задачи

31.2. Разработка алгоритмов решения задачи

31.1. Постановка и формализация задачи

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

Наиболее эффективно математическую модель можно реализовать на компьютере в виде алгоритмической модели.

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

Разработка алгоритма включает в себя выбор метода проектирования алгоритма, выбор формы записи алгоритма (блок-схемы и др.), выбор тестов и метода тестирования, проектирование самого алгоритма.

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

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

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

  • Структурно-стилизованный способ - это формализованное представление предписаний, задаваемых путем использования ограниченного набора типовых синтаксических конструкций. Данный способ представления алгоритма требует подготовки и специальных несложных знаний. Примером его может служить нотация Бэкуса – Наура, которая впервые была использована для описания синтаксических конструкций языка Фортран.

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

  • Операторный язык – это такой способ кодирования алгоритма, в результате которого получается понятная для компьютера запись алгоритма - программа. Этот способ требует, как минимум, знания правил записи выражений средствами того или иного языка программирования. Примером такого языка может служить Алгол-60, который долгие годы являлся стандартом для описания алгоритмов в научной литературе.

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

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

31.1. Постановка и формализация задачи