Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УП_Информатика_Базовый курс_Часть 3_Кисленко.pdf
Скачиваний:
70
Добавлен:
09.04.2015
Размер:
1.67 Mб
Скачать

ТЕМА 1. АЛГОРИТМИЗАЦИЯ И ПРОГРАММИРОВАНИЕ. ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ. ЯЗЫКИ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ

1.1. Понятие алгоритма и его свойства. Блоксхема алгоритма. Основные алгоритмические конструкции

Алгоритм – это базовое понятие информатики. На понятии алгоритма построены все основные принципы программирования – составления программ для вычислительных машин. Существуют различные определения алгоритма, приведем одно из них.

Алгоритм - это однозначно определенная последовательность действий, записанная на понятном исполнителю алгоритмическом языке и определяющая процесс перехода от исходных данных к результату.

Принято выделять следующие свойства алгоритма:

дискретность - алгоритм состоит из отдельных инструкций (шагов), информационный процесс разделен на отдельные команды;

определенность (детерминированность) - однозначность результатов выполнения алгоритмов в одинаковых начальных условиях, при этом каждый шаг интерпретируется исполнителем единственным образом;

результативность - за конечное число шагов достигается некоторый результат, иногда конечность алгоритма выделяют как отдельное свойство;

массовость - алгоритм работает при меняющихся в некоторых пределах входных данных, то есть, может быть применен для решения класса задач, различающихся исходными данными.

7

Иногда выделяют и другие свойства, например, правильность алгоритма означает правильность результатов, получаемых с его помощью. Алгоритм считается правильным, если он дает правильные результаты для любых допустимых начальных условий. Алгоритм содержит ошибки, если его выполнение приводит к сбоям, неправильным результатам, либо вовсе не дает результатов.

Наряду с понятием алгоритма используют термин алгоритмизация, под которой понимают совокупность приемов и способов составления алгоритмов для решения алгоритмических задач.

На практике получили распространение 2 основных формы записи алгоритмов:

словесная или текстовая форма представления алгоритма представляет собой описание алгоритма на естественном языке или в виде структурированной записи на псевдокоде – также естественном, но частично формализованном языке;

графическим представлением алгоритма в виде блок– схемы называют описание структуры алгоритма с помощью геометрических фигур с линиями–связями, показывающими порядок выполнения отдельных инструкций.

Первый из этих способов не имеет строгой формализации и редко используется в учебных целых, второй, напротив, является удобным средством изображения алгоритмов и получил широкое распространение в научной и учебной литературе.

Блок-схема – это последовательность блоков, предписывающих выполнение определенных операций, и связей между этими блоками. Внутри блоков указывается информация об операциях, подлежащих выполнению. Конфигурация и размеры блоков, а также порядок графического оформления блок-схем регламентированы ГОСТ 19002-80 и ГОСТ 19003-80 "Схемы алгоритмов и программ".

Втабл. 1 приведены наиболее часто используемые блоки, изображены элементы связей между ними и дано краткое пояс-

8

нение к ним. Блоки и элементы связей называют элементами блок-схем.

Представленных в табл. 1 элементов, как правило, достаточно для изображения всех алгоритмов, необходимых при выполнении студенческих работ.

При соединении блоков следует использовать только вертикальные и горизонтальные линии потоков.

Горизонтальные потоки, имеющие направление справа налево, и вертикальные потоки, имеющие направление снизу вверх, должны быть помечены стрелками. Прочие потоки могут быть помечены или оставлены непомеченными. Линии потоков должны быть параллельны линиям внешней рамки или границам листа.

 

Таблица 1. Основные элементы блок-схем

Название

Элемент

Комментарий

Процесс

 

Вычислительное дей-

 

 

ствие или последова-

 

 

тельность вычисли-

 

 

тельных действий

 

 

 

Решение

 

Проверка условия

 

 

 

Модификация

 

Заголовок цикла

 

 

 

Предопреде-

 

Обращение к проце-

ленный про-

 

дуре

цесс

 

 

 

 

 

9

Документ

Вывод данных, пе-

 

чать данных

 

 

Перфокарта

Ввод данных

 

 

Ввод/Вывод

Ввод/Вывод данных

 

 

Соединитель

Разрыв линии потока

 

 

Начало, Конец

Начало, конец, пуск,

 

останов, вход и вы-

 

ход во вспомогатель-

 

ных алгоритмах

Комментарий

Используется для

 

размещения надписей

 

 

Горизонталь-

Линии связей между

ные и верти-

блоками, направле-

кальные пото-

ние потоков

ки

 

Слияние

Слияние линий пото-

 

ков

 

 

Межстранич-

Нет

ный соедини-

 

тель

 

Принято различать всего три базовых алгоритмических

10