Назовите основные этапы решения задачи на эвм кратко

Обновлено: 04.07.2024

Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена.
Вы можете отредактировать эту статью, добавив ссылки на авторитетные источники.
Эта отметка установлена 1 октября 2012.

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

1. Этапы решения задачи на ЭВМ

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

1. Постановка задачи:

• сбор информации о задаче;

• формулировка условия задачи;

• определение конечных целей решения задачи;

• определение формы выдачи результатов;

• описание данных (их типов, диапазонов величин, структуры и т. п.).

2. Анализ и исследование задачи, модели:

• анализ существующих аналогов;

• анализ технических и программных средств;

• разработка математической модели;

• разработка структур данных.

3. Разработка алгоритма:

• выбор метода проектирования алгоритма;

• выбор формы записи алгоритма (блок-схемы, псевдокод и др.);

• выбор тестов и метода тестирования;

• выбор языка программирования;

• уточнение способов организации данных;

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

5. Тестирование и отладка:

• отладка семантики и логической структуры;

• тестовые расчеты и анализ результатов тестирования;

6. Анализ результатов решения задачи и уточнение в случае необходимости математической модели с повторным выполнением этапов 2-5.

7. Сопровождение программы:

• доработка программы для решения конкретных задач;

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

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

Системный программист (system/software programmer, toolsmith) — занимается разработкой, эксплуатацией и сопровождением системного программного обеспечения, поддерживающего работоспособность компьютера и создающего среду для выполнения программ.

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

Программист-аналитик (programmer-analyst) — программист, анализирующий и проектирующий комплекс взаимосвязанных программ.

Постановщик задач — разработчик формальных постановок задач, требующих реализации на ЭВМ.

Администратор базы данных — человек, который обеспечивает организационную поддержку базы данных.

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

Основным потребителем программ является конечный пользователь (end user), который, как правило, не является специалистом в области программирования.

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

Wikimedia Foundation . 2010 .

Полезное

Смотреть что такое "Этапы решение задач на ЭВМ" в других словарях:

РД 34.35.129-95: Рекомендации. Порядок разработки и поставки программных изделий к персональным ЭВМ для типовых задач тепловых электростанций — Терминология РД 34.35.129 95: Рекомендации. Порядок разработки и поставки программных изделий к персональным ЭВМ для типовых задач тепловых электростанций: 3.2. Определения ПРОГРАММНОЕ СРЕДСТВО программа, снабженная комплектом программных… … Словарь-справочник терминов нормативно-технической документации

ОСАНКА — привычное положение тела человека в покое и при движении. При правильной О. тело постоянно и без напряжения сохраняет выпрямленное положение, плечи слегка отведены назад, живот подобран. Такая О. делает фигуру красивой, способствует правильному… … Российская педагогическая энциклопедия

ОСНОВЫ ИНФОРМАТИКИ И ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ — (ОИВТ), уч предмет, введенный в ср у ч заведения Рос Федерации с 1985/86 у ч г. Предусматривает изучение законов и методов сбора, передачи и обработки информации с помощью электронной вычислит техники Цель обучения ОИВТ формирование «компьютерной … Российская педагогическая энциклопедия

РМ 4-239-91: Системы автоматизации. Словарь-справочник по терминам. Пособие к СНиП 3.05.07-85 — Терминология РМ 4 239 91: Системы автоматизации. Словарь справочник по терминам. Пособие к СНиП 3.05.07 85: 4.2. АВТОМАТИЗАЦИЯ 1. Внедрение автоматических средств для реализации процессов СТИСО 2382/1 Определения термина из разных документов:… … Словарь-справочник терминов нормативно-технической документации

Производитель программного обеспечения — Разработка программного обеспечения (англ. software engineering, software development) это род деятельности (профессия) и процесс, направленный на создание и поддержание работоспособности, качества и надежности программного обеспечения, используя … Википедия

Разработка ПО — Разработка программного обеспечения (англ. software engineering, software development) это род деятельности (профессия) и процесс, направленный на создание и поддержание работоспособности, качества и надежности программного обеспечения, используя … Википедия

Модернизация — (Modernization) Модернизация это процесс изменения чего либо в соответствии с требованиями современности, переход к более совершенным условиям, с помощью ввода разных новых обновлений Теория модернизации, типы модернизации, органическая… … Энциклопедия инвестора

Олимпиада по программированию — интеллектуальное соревнование по решению различных задач на ЭВМ, для решения которых необходимо придумать и применить какой либо программу и/или алгоритм на одном из языков программирования. Олимпиады по программированию проводятся с целью… … Википедия

Решение задач на ЭВМ - один из видов творческих заданий на занятиях, зачетах, экзаменах и олимпиадах по информатике и программированию.

Содержание

Этапы решения задач на ЭВМ

Основные этапы решения задач на ЭВМ:

  1. Постановка задачи
  2. Определение методов решения
  3. Составление алгоритмов
  4. Написание программ для ЭВМ
  5. Отладка программ на ЭВМ
  6. Получение результатов на ЭВМ

Постановка задач

Постановка задач - точное и четкое определение требуемых результатов и исходных условий в задачах.

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

Результаты - неправильные, если они противоречат поставленным требованиям.

Задачи могут быть частными (конкретными) и обобщенными (массовыми).

Определение методов решения

Метод решения - это общий способ решения некоторого класса задач.

Способ решения - правильный, если он дает правильные результаты.

Способ решения - неправильный, если он дает неправильные результаты.

Способ - последовательность действий, ведущая к получению результатов.

Метод решения - правильный, если он дает правильные результаты для любых исходных данных поставленной задачи.

Составление алгоритмов

Алгоритмизация - это составление алгоритмов для решения задач на ЭВМ.Исходным для решения задач на ЭВМ является точная постановка задач с четким выделение требуемого и исходного.

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

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

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

Написание и отладка программ на ЭВМ

Программирование - написание программ для ЭВМ может производится тремя способами:

  1. написание программы исходя из условий задачи. (традиционный способ)
  2. кодирование программ по детальным алгоритмам решения задач на ЭВМ
  3. совместная разработка алгоритмов и программ (структурное проектирование)

Программа содержит ошибки, если ее выполнение на ЭВМ приводит к получению сбоев, отказов или получению не правильных результатов.

Ошибки в алгоритмах программах - одна из самых серьезных проблем в информатике и профессиональном программировании.

Отладка программ - поиск и исправление ошибок в программах на ЭВМ. Поскольку число ошибок неизвестно, то неизвестна и продолжительность отладки программ на ЭВМ.

Отсутствие ошибок в программах проверяется их тестированием на ЭВМ. Тестирование может выявить ошибки, но не может гарантировать отсутствие ошибок в программах. (Дейкстра)

Тестирование программ на ЭВМ

Тестирование программ - это процесс проверки программ на ЭВМ с помощью тестов. Тесты - это наборы тестовых исходных данных с перечнем правильных результатам.

Получение неправильных результатов, сбоев или отказов говорит о наличии ошибок в программах. Тестирование может показать наличие ошибок в программах на ЭВМ

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

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

Анализ и доказательства правильности алгоритмов и программ можно и нужно проводить после структурно полного тестирования программ на ЭВМ.

Анализ правильности алгоритмов

Примеры анализа правильности алгоритмов и программ на языках Бейсик и Паскаль приведены в книгах Дейкстры и учебниках информатики Каймина.

Все примеры приведены с постановками задач, алгоритмами, спецификациями, текстами программ на Бейсике и доказательствами правильности программ.

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

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

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

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

Третий этап алгоритмизация задачи. На основе математического описания необходимо разработать алгоритм решения.

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

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

Исполнителем может быть не только человек, но и автомат. Компьютер – лишь частный, но наиболее впечатляющий пример исполнителя, чьё поведение основано на реализации алгоритма. Более того, создание персонального компьютера оказало воздействие на развитие теории алгоритмов, одной из областей дискретной математики.

Эффективный метод построения алгоритма – метод пошаговой детализации (последовательного построения). При этом сложная задача разбивается на ряд более простых. Для каждой подзадачи разрабатывается свой алгоритм. Универсальный эффективный метод построения алгоритма является основой структурного программирования (см. п. 6.16).

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

Используются различные способы записи алгоритмов:

– словесный (запись рецептов в кулинарной книге, инструкции по использованию технических устройств);

– графический – в виде блок-схемы;

– структурно-стилизованный (для записи используется язык псевдокода).

При составлении и записи алгоритма необходимо обеспечить, чтобы он обладал рядом свойств:

Однозначность алгоритма – единственность толкования исполнителем правил выполнения действий и порядка их выполнения. Чтобы алгоритм обладал этим свойством, он должен быть записан командами из системы команд исполнителя.

Конечность алгоритма – обязательность завершения каждого из действий, составляющих алгоритм, и завершимость алгоритма в целом.

Результативность алгоритма – предполагает, что выполнение алгоритма должно завершиться получением определённых результатов.

Массовость – возможность применения данного алгоритма для решения целого класса задач, отвечающих общей постановке задачи.

Правильность алгоритма – способность алгоритма давать правильные результаты решения поставленных задач.

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




Пятый этап ввод программы и исходных данных в ЭВМ с клавиатуры с помощью редактора текстов. Для постоянного хранения осуществляется их запись на гибкий или жёсткий диск.

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

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

Сложные программы отлаживают отдельными фрагментами.

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

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

Языки программирования

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

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

Команды, предназначенные для ЭВМ, необходимо записывать в понятной компьютеру форме. С этой целью применяют языки программирования – искусственные языки, алфавит, словарный запас и структура которых удобны и понятны компьютеру.

В самом общем смысле языком программирования называется фиксированная система обозначений и правил для описания алгоритмов и структур данных. Языки программирования должны быть понятны и человеку, и ЭВМ. Они делятся на языки низкого и высокого уровня.

Язык низкого уровня – средство записи программы простыми приказами – командами на аппаратном уровне. Такой язык отражает структуру данного класса ЭВМ, и поэтому иногда называется машинно-ориентированным языком. Пользуясь системой команд, понятной ПК, можно описать алгоритм любой сложности, но такая запись для сложных задач будет очень громоздкой и мало приспособленной для использования человеком.

Существенной особенностью языков низкого уровня является жесткая ориентация на определённый тип аппаратуры (систему команд процессора).

Чтобы приспособить язык программирования низкого уровня к человеку, был разработан язык символического кодирования – язык Ассемблер. Структура команд Ассемблера определяется форматами команд и данных машинного языка. Программа на Ассемблере ближе человеку, потому что операторы этого языка – те же коды, но они имеют мнемонические названия; используются не конкретные адреса, а их символьные имена.

Многочисленную группу составляют языки программирования высокого уровня. Средства таких языков допускают описание задачи в наглядном, легко воспринимаемом виде. Отличительной особенностью этих языков является ориентация не на систему команд той или иной ЭВМ, а на систему операторов, характерных для записи определённого класса алгоритмов.

К языкам программирования этого типа относятся Бейсик, Фортран, Паскаль, Си и другие. Программа на языках высокого уровня записывается системой обозначений, понятной человеку (например, фиксированным набором слов английского языка).

Все вышеперечисленные языки – вычислительные. Более молодые – декларативные (непроцедурные) языки. Отличительная черта их – задание связей и отношений между объектами и величинами и отсутствие определенной последовательности действий (один из первых – Пролог, затем C++, Delphi, Visual Basic). Эти языки дали толчок к разработке специальных языков искусственного интеллекта и языков представления знаний.

Трансляторы

Текст программы, записанный, например, на Паскале, не может быть воспринят ЭВМ непосредственно, требуется перевести его на машинный язык. Перевод программы с языка программирования на язык машинных кодов называется трансляцией (translation – перевод), а выполняется специальными программами – трансляторами. Существует три вида трансляторов: интерпретаторы, компиляторы, ассемблеры.

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

Любой транслятор решает следующие основные задачи:

– анализирует транслируемую программу, в частности, проверяет, содержит ли она синтаксические ошибки;

– генерирует выходную программу (её часто называют объектной или рабочей) на языке команд ЭВМ;

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

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

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

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

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

Третий этап алгоритмизация задачи. На основе математического описания необходимо разработать алгоритм решения.

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

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

Исполнителем может быть не только человек, но и автомат. Компьютер – лишь частный, но наиболее впечатляющий пример исполнителя, чьё поведение основано на реализации алгоритма. Более того, создание персонального компьютера оказало воздействие на развитие теории алгоритмов, одной из областей дискретной математики.

Эффективный метод построения алгоритма – метод пошаговой детализации (последовательного построения). При этом сложная задача разбивается на ряд более простых. Для каждой подзадачи разрабатывается свой алгоритм. Универсальный эффективный метод построения алгоритма является основой структурного программирования (см. п. 6.16).

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

Используются различные способы записи алгоритмов:

– словесный (запись рецептов в кулинарной книге, инструкции по использованию технических устройств);

– графический – в виде блок-схемы;

– структурно-стилизованный (для записи используется язык псевдокода).

При составлении и записи алгоритма необходимо обеспечить, чтобы он обладал рядом свойств:

Однозначность алгоритма – единственность толкования исполнителем правил выполнения действий и порядка их выполнения. Чтобы алгоритм обладал этим свойством, он должен быть записан командами из системы команд исполнителя.

Конечность алгоритма – обязательность завершения каждого из действий, составляющих алгоритм, и завершимость алгоритма в целом.

Результативность алгоритма – предполагает, что выполнение алгоритма должно завершиться получением определённых результатов.

Массовость – возможность применения данного алгоритма для решения целого класса задач, отвечающих общей постановке задачи.

Правильность алгоритма – способность алгоритма давать правильные результаты решения поставленных задач.

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

Пятый этап ввод программы и исходных данных в ЭВМ с клавиатуры с помощью редактора текстов. Для постоянного хранения осуществляется их запись на гибкий или жёсткий диск.

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

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

Сложные программы отлаживают отдельными фрагментами.

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

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

Языки программирования

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

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

Команды, предназначенные для ЭВМ, необходимо записывать в понятной компьютеру форме. С этой целью применяют языки программирования – искусственные языки, алфавит, словарный запас и структура которых удобны и понятны компьютеру.

В самом общем смысле языком программирования называется фиксированная система обозначений и правил для описания алгоритмов и структур данных. Языки программирования должны быть понятны и человеку, и ЭВМ. Они делятся на языки низкого и высокого уровня.

Язык низкого уровня – средство записи программы простыми приказами – командами на аппаратном уровне. Такой язык отражает структуру данного класса ЭВМ, и поэтому иногда называется машинно-ориентированным языком. Пользуясь системой команд, понятной ПК, можно описать алгоритм любой сложности, но такая запись для сложных задач будет очень громоздкой и мало приспособленной для использования человеком.

Существенной особенностью языков низкого уровня является жесткая ориентация на определённый тип аппаратуры (систему команд процессора).

Чтобы приспособить язык программирования низкого уровня к человеку, был разработан язык символического кодирования – язык Ассемблер. Структура команд Ассемблера определяется форматами команд и данных машинного языка. Программа на Ассемблере ближе человеку, потому что операторы этого языка – те же коды, но они имеют мнемонические названия; используются не конкретные адреса, а их символьные имена.

Многочисленную группу составляют языки программирования высокого уровня. Средства таких языков допускают описание задачи в наглядном, легко воспринимаемом виде. Отличительной особенностью этих языков является ориентация не на систему команд той или иной ЭВМ, а на систему операторов, характерных для записи определённого класса алгоритмов.

К языкам программирования этого типа относятся Бейсик, Фортран, Паскаль, Си и другие. Программа на языках высокого уровня записывается системой обозначений, понятной человеку (например, фиксированным набором слов английского языка).

Все вышеперечисленные языки – вычислительные. Более молодые – декларативные (непроцедурные) языки. Отличительная черта их – задание связей и отношений между объектами и величинами и отсутствие определенной последовательности действий (один из первых – Пролог, затем C++, Delphi, Visual Basic). Эти языки дали толчок к разработке специальных языков искусственного интеллекта и языков представления знаний.

Трансляторы

Текст программы, записанный, например, на Паскале, не может быть воспринят ЭВМ непосредственно, требуется перевести его на машинный язык. Перевод программы с языка программирования на язык машинных кодов называется трансляцией (translation – перевод), а выполняется специальными программами – трансляторами. Существует три вида трансляторов: интерпретаторы, компиляторы, ассемблеры.

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

Любой транслятор решает следующие основные задачи:

– анализирует транслируемую программу, в частности, проверяет, содержит ли она синтаксические ошибки;

– генерирует выходную программу (её часто называют объектной или рабочей) на языке команд ЭВМ;

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

Этапы решения задачи на ЭВМ
1. Постановка задачи:
• сбор информации о задаче;
• формулировка условия задачи;
• определение конечных целей решения задачи;
• определение формы выдачи результатов;
• описание данных (их типов, диапазонов величин, структуры и т. п.) .
2. Анализ и исследование задачи, модели:
• анализ существующих аналогов;
• анализ технических и программных средств;
• разработка математической модели;
• разработка структур данных.
3. Разработка алгоритма:
• выбор метода проектирования алгоритма;
• выбор формы записи алгоритма (блок-схемы, псевдокод и др.) ;
• выбор тестов и метода тестирования;
• проектирование алгоритма.
4. Программирование:
• выбор языка программирования;
• уточнение способов организации данных;
• запись алгоритма на выбранном языке
программирования.
5. Тестирование и отладка:
• синтаксическая отладка;
• отладка семантики и логической структуры;
• тестовые расчеты и анализ результатов тестирования;
• совершенствование программы.
6. Анализ результатов решения задачи и уточнение в случае необходимости математической модели с повторным выполнением этапов 2-5.
7. Сопровождение программы:
• доработка программы для решения конкретных задач;
• составление документации к решенной задаче, к математической модели, к алгоритму, к программе, к набору тестов, к использованию.

Читайте также: