- •Раздел 9. Алгоритмизация и программирование
 - •9.1. Алгоритмизация
 - •9.1.1. Понятие алгоритма. Формы представления алгоритмов
 - •9.1.2. Визуализация алгоритмов
 - •9.1.3. Алгоритмы линейной структуры
 - •9.1.4. Алгоритмы разветвленной структуры
 - •9.1.5. Алгоритмы циклической структуры
 - •9.1.6. Алгоритмы обработки одномерных массивов
 - •9.1.7. Алгоритмы обработки двумерных массивов
 
Раздел 9. Алгоритмизация и программирование
9.1. Алгоритмизация
9.1.1. Понятие алгоритма. Формы представления алгоритмов
Алгоритм – это четкое описание последовательности действий, которые необходимо выполнить при решении задачи. Разработка алгоритма решения задачи – это разбиение задачи на последовательно выполняемые этапы.
Разработанный алгоритм можно записать несколькими способами:
- на естественном языке;
- в виде блок схемы.
Изображение на естественном языке. Словесно-формульное описание алгоритмов, т.е. с помощью слов и формул. Данное описание можно использовать перед созданием алгоритмов в виде блок-схемы, в случае сложного алгоритма.
Изображение в виде блок схемы. Блок-схемой называется графическое изображение алгоритма, когда отдельные его этапы создания изображаются при помощи различных геометрических символов, а связи между этапами его создания указываются с помощью стрелок, соединяющие эти символы. Символы сопровождаются надписями.
9.1.2. Визуализация алгоритмов
В схемах алгоритмов и программ применяются следующие условные графические обозначения, согласно ГОСТ 19.003-80 «Единая система программной документации. Схемы алгоритмов и программ. Обозначение условные графические (таблица № 9.1.).
Таблица № 9.1. Обозначения условные графические
| 
			 Наименование  | 
			 Обозначение  | 
			 Функция  | 
| 
			 1. Процесс  | 
			 
 
  | 
			 Выполнение операций или группы операций, в результате, которых изменяется значение, форма представления или расположение данных  | 
| 
			 2. Решение  | 
			 
  | 
			 Выбор направления выполнения алгоритма или программы в зависимости от некоторых переменных условий  | 
| 
			 3. Предопределен-ный процесс  | 
			 
  | 
			 Использование ранее созданных и отдельно описанных алгоритмов или программ  | 
| 
			 4. Модификация  | 
			 
  | 
			 Выполнение операций, меняющих команды или группу команд, изменяющих программу  | 
| 
			 5. Ввод - вывод  | 
			 
  | 
			 Преобразование данных в форму, пригодную для обработки (ввод) или отображения результатов обработки (вывод)  | 
| 
			 6. Пуск-останов  | 
			 
  | 
			 Начало, конец, прерывание процесса обработки данных или выполнения программы  | 
| 
			 7. Документ  | 
			 
  | 
			 Ввод-вывод данных, носителем которых служит бумага  | 
9.1.3. Алгоритмы линейной структуры
Линейный алгоритм – это такой алгоритм, в котором все операции выполняются последовательно одна за другой (рис. 9.1).
пуск





останов

Рис. 9.1. Блок-схема алгоритма линейной структуры.
Пример 5.1. Дано: a, b, c - длины трех сторон треугольника.
Найти: S – площадь треугольника, Р – периметр треугольника.
    
Площадь треугольника
равна 
,
гдеr
– полупериметр треугольника.
Блок-схема алгоритма решения задачи (рис.9.2.)
пуск

	
	
a,b,c
	
r=(a+b+c)/2
	
P=a+b+c
                 
                                                          
S=
	
S,P
                 
                                                     
останов
Рис. 9.2. Блок-схема алгоритмы нахождения площади треугольника и периметр
Пример 9.2.
Дано: a, b – длины двух катетов в прямоугольном треугольнике.
Найти: с – длину гипотенузы, S – площадь треугольника
Блок-схема алгоритма решения задачи (рис.9.3.).
пуск
	
a,b
	
С=
S=ab/2

                 
                                                          
	
S,c
останов

Рис. 9.3. Алгоритм нахождения гипотенузы и площади треугольника
Отладка алгоритмов линейной структуры
Алгоритм можно использовать только в том случае, если он верен. На практике практически всегда созданный алгоритм имеет ошибки, поэтому он требует «отладки» - исправлений.
Отладкой алгоритма называется процесс выявления и исправления ошибок в алгоритме. Для этого необходимо найти какой-то другой способ решения задачи, при котором в обеих случаях результат должен быть одинаков. Чаще всего это делается «вручную», т.е. расчет проводят не только согласно созданного алгоритма, но и с помощью подручных средств, например калькулятора.
В нашем случае, по составленному алгоритму, с помощью калькулятора, при одних и тех же исходных данных, находим площадь треугольника и периметр (рис. 9.2) и гипотенузу и площадь треугольника (рис. 9.3.).
Операции, совершаемые в алгоритме, должны совпадать с операциями в языке программирования. Последовательность операций должна соответствовать приоритетам их выполнения, функции, типы данных, обозначения.
Отладка алгоритмов линейной структуры совпадает с методами отладки, указанные выше.






