Процесс составления алгоритмов, а также раздел информатики, который изучает свойства и методы их построения, называется алгоритмизацией. Некоторые аспекты алгоритмики изучаются в курсе информатики 9 класса. Кратко об основах алгоритмизации можно прочесть в данной статье.
Геометрические фигуры, используемые для представления шагов алгоритма, отличаются по функциональному назначению. Для обозначения действия или процесса используется прямоугольник. Для задания условия используется ромб, для ввода-вывода применяют параллелограмм, гексаэдр обозначает цикл с заданным числом повторов. Начало и конец алгоритма оформляют в виде овалов.
Все блоки соединяют друг с другом в порядке выполнения этапов алгоритма с помощью стрелок, указывающих направление следования по элементам блок-схемы.
Блок-схемы следует чертить по определенным правилам, собранным в ГОСТ 19.701-90 ЕСПД. «Схемы алгоритмов, программ, данных и систем. Обозначения условные и правила выполнения». Блок-схему можно начертить в специальных программах для черчения, которые имеют библиотеки готовых стандартизированных графических элементов.
Виды алгоритмов
Алгоритмы принято делить на три вида:
- последовательные;
- разветвляющиеся;
- циклические.
Последовательный алгоритм
В последовательных (линейных) алгоритмах все действия выполняются поочередно.
Например, решение задачи нахождения значения выражения y=2*x+3 при вводимых значениях переменной x можно разбить на 3 этапа.
- Определение начальных условий задачи. На этом этапе определяется значение x в тексте программы. Или можно организовать ввод значения переменной x с клавиатуры.
- Вычисление простого выражения 2 * x + 3 и присвоение полученного значения переменной y.
- Вывод результатов. Удобнее всего это сделать на экран.
Разветвляющийся алгоритм
В таких алгоритмах присутствует условие, и предусмотрены разные варианты выполнения вычислений в зависимости от результатов условия.
Очень часто в программировании стоит задача нахождения четности числа. Проверить четность проще всего определением остатка от деления числа на два. Если число делится на два без остатка, то оно четное, иначе нечетное. Алгоритм для решения этой задачи может состоять из 5 этапов.
- Задание числа Х. Можно организовать ввод с клавиатуры.
- Разделить число Х на 2 и остаток от деления присвоить некоторой промежуточной переменной А.
- Задание условия: если А=0, то п.4 иначе п.5.
- Вывод результатов: число четное.
- Вывод результатов: число нечетное.
Циклический алгоритм
В циклическом алгоритме организуется повтор одного или нескольких этапов решения задачи. Выполнять многократно действия можно до тех поря, пока не будет выполнено условие остановки. Или количество повторов может быть задано изначально.
Например, в задаче нахождения суммы чисел от 0 до заданного числа N многократно будут выполняться действия суммирования и инкремента (увеличения на единицу счетчика чисел).
- Определение числа N. Ввод с клавиатуры.
- вычисление суммы (С + К) и присвоение результата переменной С.
- Увеличение счетчика на единицу.
- Проверка условия (К больше N), если условие выполняется, то происходит выход из цикла, иначе возврат на п.2
Одним из основоположников структурного программирования является нидерландский ученый Эдсгер Вибе Дейкстра. Он считал, что правильным подходом в программировании является структурный подход, когда задача предварительно описана и реализована в виде четкого однозначного алгоритма, который реализуется в лаконичной структурированной программе.
Что мы узнали?
Алгоритмизация занимается вопросами составления алгоритмов. Самым наглядным способом задания алгоритмов является графический. Существуют последовательный, разветвляющийся, циклический алгоритмы.