РАБОТА 1. Алгоритмизация
Для успешного использования ЭВМ в своей профессиональной деятельности пользователь должен уметь формулировать задачи, разрабатывать алгоритмы их решения, записывать алгоритмы на языке, понятном ЭВМ.
Этапы подготовки и решения реальных задач приведены на рис. 1.
В курсе информатики детально рассматриваются 4, 5 и 6 этапы решения задач, так как они непосредственно связаны с использованием ЭВМ.
Рисунок 1 – Этапы решения задач на ЭВМ
Алгоритмы и способы их описания
Алгоритм – система правил, рецептов, инструкций. Алгоритм – точный порядок действий, определяющий процесс, ведущий от исходных данных к искомому результату и обладающий следующими свойствами:
1. Понятность для исполнителя – исполнитель алгоритма должен понимать, как его выполнять.
2. Дискретность (прерывность, раздельность) – алгоритм должен представлять процесс решения задачи как последовательное выполнение простых шагов (этапов).
3. Определенность – каждое правило алгоритма должно быть четким и однозначным. Благодаря этому свойству выполнение алгоритма носит механический характер и не требует никаких дополнительных указаний или сведений о решаемой задаче.
4. Результативность (или конечность) состоит в том, что за конечное число шагов алгоритм либо должен приводить к решению задачи, либо после конечного числа шагов останавливаться из-за невозможности получить решение с выдачей соответствующего сообщения, либо неограниченно продолжаться в течение времени, отведенного для исполнения алгоритма, с выдачей промежуточных результатов.
5. Массовость означает, что алгоритм решения задачи разрабатывается в общем виде, т.е. он применяется для целого класса задач, различающихся лишь исходными данными. При этом исходные данные могут выбираться из некоторой области, которая называется областью применимости алгоритма.
|
Для представления алгоритмов используются несколько способов:
· словесный (описание на естественном человеческом языке);
· графический (на языке блок-схем);
· с помощью символов специального языка проектирования программ – псевдокодов;
· с использованием ШРО-диаграмм;
· с использованием таблиц решений;
· с помощью схемы Насси-Шнейдермана;
· с помощью одного из алгоритмических языков программирования.
Типовые этапы разработки алгоритмов:
· описание общего замысла алгоритма;
· формализация задачи;
· разработка обобщенной схемы алгоритма;
· разработка отдельных блоков алгоритма;
· стыковка блоков;
· определение возможности использования стандартных блоков;
· разработка блоков логического контроля;
· оптимизация схемы алгоритма;
· уточнение параметров;
· оценка машинного ресурса.
Составление алгоритма на языке блок-схем
Блок-схема – это графическая интерпретация алгоритма, представляющая набор геометрических фигур, каждая из которых изображает какую-либо операцию или действие. Форма символов и правила составления схем алгоритмов установлены государственными стандартами: ГОСТ 19.701-90 «Схемы алгоритмов, программ, данных и систем».
Основные элементы, используемые при построении блок-схем, представлены в табл. 1.
Таблица 1 – Основные элементы для построения блок-схем
Функция | Обозначение |
Процесс– формирование новых значений, выполнение арифметических или логических операций или действий, результаты которых запоминаются в оперативной памяти ЭВМ | |
Решение– проверка условий. Отображает решение или функцию переключательного типа с одним входом и двумя или более альтернативными выходами, из которых только один может быть выбран после вычисления условий, определенных внутри этого элемента. выбор одного из двух направлений выполнения алгоритма в зависимости от некоторого условия выбор одного из «n» направлений выполнения алгоритма в зависимости от некоторых условий при n>2 | |
Модификация – организация циклических конструкций. Условия цикла и приращения записываются внутри символа. |
Окончание таблицы 1
|
Предопределенный процесс – вычисление по подпрограмме, использование ранее созданных и отдельно описанных алгоритмов. Внутри символа записывается название процесса и передаваемые в него данные. | |
Начало и конец программы или вход и выход в подпрограммах. Элемент отображает вход из внешней среды или выход в нее (наиболее частое применение − начало и конец программы). Внутри фигуры записывается соответствующее действие | |
Ввод-вывод данных – преобразование данных в форму, пригодную для обработки (ввод) или отображения результатов обработки (вывод). Ввод может осуществляться с клавиатуры, сенсорного монитора, вывод может осуществляться на бумагу, на экран монитора, на магнитный диск или ленту. Данный символ не определяет носителя данных (для указания типа носителя данных используются специфические символы). | |
Соединитель – разрыв линий потока. Символ отображает выход в часть схемы и вход из другой части этой схемы. Используется для обрыва линии и продолжения ее в другом месте. Соответствующие соединительные символы должны иметь одно (при том уникальное) обозначение. | |
Соединитель – перенос на другую страницу. Указание связи между разъединенными частями схем алгоритмов и программ, расположенных на разных листах. Соответствующие соединительные символы также должны иметь одно уникальное обозначение. | |
Направление линий потока– стрелки: снизу вверх и справа налево | |
Комментарий– пояснения, содержание подпрограмм. Используется для более подробного описания шага, процесса или группы процессов. Описание помещается со стороны квадратной скобки и охватывается ей по всей высоте. Линия идет к описываемому элементу, либо группе элементов (при этом группа выделяется замкнутой линией). Также символ комментария следует использовать в тех случаях, когда объем текста в каком-либо другом символе (например, символ процесса, символ данных и др.) превышает его объем. |
Размер a должен выбираться из ряда 10, 15, 20 мм. Допускается увеличивать размер a на число, кратное 5. Размер b равен 1,5a. При выполнении условных графических обозначений автоматизированным способом размеры геометрических элементов символов округляются до значений, определяемых техническими возможностями используемых устройств.
|