
- •Технология программирования линейных процессов
- •Постановка задачи
- •Формирование математической модели
- •Выбор метода решения
- •Составление алгоритма решения
- •Программирование задачи
- •Ключевые слова
- •Константы
- •Целые константы
- •Вещественные константы
- •Текстовые константы
- •Переменные
- •Правила записи и использования оператора
- •Функции. Вызовы функций
- •Арифметические выражения
- •Правила записи и вычисления арифметических выражений
- •Оператор присваивания
- •Правила составления и использования
- •Операторы ввода-вывода
- •Оператор ввода
- •Правила составления и выполнения оператора ввода
- •Оператор вывода на дисплей
- •Правила составления и выполнения оператора вывода
- •Оператор вывода в поток
- •Организация ввода-вывода переменных
- •Ввод переменных
- •Вывод переменных
- •Заголовок программы
- •Тело программы
- •Поэлементная структура простейшей программы
- •Предмашинная подготовка задачи определения площади круга
- •Постановка задачи
- •Создание математической модели задачи
- •Выбор метода решения
- •Составление алгоритма решения
- •Программирование задачи
- •Заключение
- •Вопросы для контроля
-
Технология программирования линейных процессов
Ознакомление с общими закономерностями технологии создания программных продуктов позволяет перейти к реализации их для стандартных вычислительных процессов.
В ряду вычислительных процессов простейшим является линейный.
Линейный – вычислительный процесс последовательного, однократного выполнения всех запланированных участков вычислений.
Все линейные процессы по структуре и объему планируемых вычислений можно классифицировать на простые, псевдолинейные и сложные (рис. 3.1).
Рис. 3.1. Классификация линейных процессов
Предлагаемая классификация линейных процессов достаточно условна. Она зависит не только от предполагаемого количества исходных, конечных и промежуточных операндов (единицы, сотни). Важны также планируемые над ними операции, возможности их реализации и квалификация пользователя-разработчика.
Простой линейный – вычислительный процесс последовательной однократной обработки единиц (реже десятков) исходных данных арифметическими операциями над ними.
В общем случае простые линейные процессы встречаются достаточно редко. Типичные примеры простых линейных процессов – вычисление площадей элементарных геометрических фигур (прямоугольник, треугольник, круг).
Псевдолинейный – вычислительный процесс последовательной однократной обработки исходных данных арифметическими операциями, включая тригонометрические (трансцендентные) функции.
Псевдолинейность обусловлена тем, что напрямую определить численное значение тригонометрических и трансцендентных функций невозможно, ЭВМ осуществляет их вычисление с помощью конкретных подпроцессов (подпрограмм), если они имеются в ее библиотеках.
В этом случае
(подпрограммы вычисления одной или
нескольких типовых функций, входящих
в расчетную зависимость существуют)
вычислительный процесс считается
псевдолинейным (линейный процесс с
подпроцессом). Типичный пример –
вычисление значения стороны непрямоугольного
треугольника
или расчет функциональной зависимости
типа y
= 2sin(a/2)
– ln(3b).
Для нетиповых функций (отсутствуют в библиотеках ЭВМ) может понадобиться достаточно сложный и, как правило, нелинейный дополнительный подпроцесс, разрабатываемый самим пользователем. Типичный пример – расчет интеграла, осуществляемый циклическим накоплением.
Сложный – вычислительный процесс последовательной однократной обработки значительного количества операндов (десятки, сотни) типовыми операциями над ними.
При формальном обеспечении определяющего требования линейного процесса (однократности использования) программирование таких процессов неэффективно – затраты времени на создание и отладку программы намного превышают время ее решения с помощью калькулятора.
Рассмотрим программирование линейных вычислительных процессов на задаче (3.1) о покраске.
-
Постановка задачи
Рассчитать
количество красителя для покраски
цилиндрической ёмкости с диаметром
днища 3,2 м и высотой боковой стенки 6780
мм, если известно, что на 1 дм2
окрашиваемой площади требуется
красителя. При расчёте предусмотреть
получение результатов в килограммах.
Анализ постановки задачи приводит к выводу, что она не определена полностью, поэтому зададимся следующими допущениями:
-
резервуар сверху открыт;
-
покраске подлежат только внешние поверхности;
-
плотность краски составляет 1,4 кг/л.
Следовательно, уточнённый вариант словесной формулировки имеет вид:
Рассчитать массу
красителя (кг), необходимого для покраски
цилиндрической ёмкости с диаметром
днища 3,2 м и высотой боковой стенки 6780
мм. Резервуар полностью открыт сверху.
Покраске подлежат наружные поверхности
стенок и днища. Расход красителя
составляет
на 1 дм2
окрашиваемой площади. Плотность красителя
1,4 кг/л.