
- •Федеральное агентство по образованию
- •1. Метод проектирования программных средств
- •1.1. Техническое задание
- •1.2. Анализ задачи
- •1.3. Разработка алгоритма
- •1.4. Выбор языка программирования
- •2. Структуры алгоритмов
- •2.1. Алгоритм линейной структуры
- •2.2. Ветвления
- •2.3. Циклы
- •3. Еспд
- •3.1. Схемы алгоритмов, программ, данных и систем
- •1. Правила применения символов
- •2 Правила выполнения соединений
- •3 Специальные условные обозначения
- •3.2. Другие разделы еспд приведены в приложении №1.
- •4. Классификация языков программирования
- •Краткая история языков программирования
- •5. Работа в интегрированной среде Турбо Паскаль 7.0.
- •6. Основы Паскаля
- •6.1. Алфавит и лексемы
- •6.1.1. Имена, ключевые слова и знаки операций
- •6.1.2. Константы
- •6.1.3. Метки
- •6.1.4. Комментарии
- •6.1.5. Директивы компилятору
- •6.2. Структура программной единицы
- •6.3. Стиль записи программ на языке Паскаль
- •7. Типы данных в Паскале
- •7.1. Классификация типов данных в Турбо Паскале
- •7.2. Порядковые типы
- •7.2.1. Логический (булевский) тип
- •7.2.2. Целые типы
- •7.2.3. Перечисляемый тип
- •7.2.4. Тип – диапазон
- •7.2.5. Символьный тип
- •7.3. Вещественные типы
- •7.4. Строки
- •7.4.1. Основные понятия
- •7.4.2. Операции над строками
- •7.4.3. Процедуры и функции для работы со строками
- •8. Совместимость и преобразование типов
- •8.1. Совместимость типов
- •8.2. Преобразование (приведение) типов и значений
- •8.2.1. Явное преобразование типов и значений
- •8.2.2. Неявное преобразование типов
- •9. Выражения в языке Паскаль
- •10. Оператор присваивания
- •11. Простейший ввод-вывод на Паскале
- •11.1. Стандартные файлы Input и Output
- •11.2. Ввод с клавиатуры
- •11.3. Вывод на экран
- •12. Средства языка тр для циклов с известным числом повторений
- •12.1. Табулирование функций
- •13. Разветвляющиеся алгоритмы
- •13.1. Команда выбора case
- •13.2. Команда ветвления
- •14. Циклы с неизвестным числом повторений
- •14.1. Цикл с предусловием (While)
- •14.2. Цикл с постусловием (Repeat … until)
- •Приложение 1. «Стандарты еспд»
- •Руководство системного программиста гост 19503-79*
- •Общие положения
- •Содержание разделов
- •Руководство оператора гост 19.505 – 79* Общие положения
- •Содержание разделов
- •Описание программы гост 19.402-78
- •Программа и методика испытаний еспд. Гост 19.301-79
- •Общие положения
- •Содержание разделов
- •59 Лекции по курсу «Языки программирования» Часть I.
1.4. Выбор языка программирования
Этот этап присутствует при решении задач, когда в ТЗ не указан язык программирования. Здесь выбирается тот язык, с помощью которого наиболее эффективно реализуется разработанный алгоритм.
1.5. Реализация алгоритма
Реализация алгоритма заключается в записи его в виде программы. При этом каждый шаг алгоритма преобразуется в один или несколько операторов того или иного языка программирования.
Структурное программирование — дисциплинирующий подход к программированию, обеспечивающий создание легких для понимания программ и снижающий вероятность ошибок. Суть этого подхода состоит в соблюдении общепринятого стиля программирования и обеспечении удобочитаемости исходного текста.
1.6. Тестирование и отладка программы
Цель тестирования и отладки заключается в том, чтобы добиться правильной работы программы. При этом не следует полагаться на проверку в единственной ситуации. Запустите программу на выполнение несколько раз, используя различные наборы данных, и убедитесь, что она работает должным образом для каждого случая, предусмотренного в алгоритме. При этот используются определенные методы тестирования.
1.7. Документирование
На этом этапе разрабатываются документы на программный продукт в соответствии с ЕСПД. Основными из которых являются:
Руководство системного программиста.
Руководство программиста.
Руководство оператора.
Программа и методика испытаний.
1.8. Поддержка и обновление программы
Поддержка и обновление программы сводится к удалению ранее незамеченных ошибок.
1.9. Рассмотрим конкретный пример
Постановка задачи
Пусть требуется создать программу, переводящую одну единицу измерения товара в другую, например килограммы в граммы.
Анализ задачи
Первый этап в решении данной задачи состоит в том, чтобы понять, что от вас требуется.
Входные данные для данной задачи представляют собой количество товара в килограммах. Выходные данные должны представлять собой количество товара в граммах. Теперь, чтобы написать программу, вам необходимо знать соотношение между килограммами и граммами. Согласно справочнику,
1 кг. = 1000 г.
Данные, которые фигурируют в задаче, а также формула, выражающая соотношение между ними, представлены ниже. Здесь Kq и Gr служат идентификаторами ячеек памяти, в которых содержатся соответственно входные и выходные данные.
Необходимые данные:
Входные
Kg {количество товара в килограммах}
Выходные
Gr {количество количество товара в граммах }
Актуальная формула: 1 кг. = 1000 г.
Создание алгоритма
Теперь можно приступить к созданию алгоритма, способного решить нашу задачу. Для начала перечислим три основных шага этого алгоритма, или подзадачи:
считывание данных о количестве товара в килограммах;
преобразование количества товара в граммы;
вывод данных о количестве товара в граммах.
Теперь необходимо решить, нуждается ли какой-либо из этих шагов алгоритма в детализации, либо все они предельно ясны. Шаг 1 (считывание данных) и шаг 3 (вывод результатов) представляют собой элементарные действия, не нуждающиеся ни в какой детализации. Что касается шага 2, то он также достаточно ясен, однако некоторая детализация здесь не помешает.
Детализация шага 2:
Чтобы количество товара, заданного в килограммах, перевести в граммы, следует умножить его на 1000.
Полный алгоритм с этой детализацией можно видеть ниже. Здесь детализация шага 2 обозначена номером 2.1 и представлена под пунктом 2 с отступом.
Считывание данных о количестве товара в килограммах.
Преобразование количества товара в граммы.
2.1. Чтобы количество товара, заданного в в килограммах, перевести в граммы, следует умножить его на 1000.
3.Вывод данных о площади ткани в квадратных метрах.
Теперь, прежде чем переходить к следующему этапу, следует этот алгоритм проверить. Если в качестве исходных данных задать количество товара, в килограммах, например 2 кг. (шаг 1), наш алгоритм обеспечит умножение этой величины на 1000, что соответствует 2 000 граммам (шаг 2.1). Затем состоится вывод этого верного результата (шаг 3).
Реализация алгоритма
Для реализации только что найденного решения необходимо записать этот алгоритм в виде Pascal-программы. Начать следует с того, чтобы сообщить компилятору об именах использованных ячеек памяти и о том, какие данные хранятся в каждой из ячеек. Затем каждый шаг алгоритма следует преобразовать в один или несколько Pascal-операторов. Если какой-либо из шагов алгоритма был детализирован, преобразовывать в операторы следует не исходный шаг, а детализирующие шаги.