Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв ИП 2010-04-04 doc.doc
Скачиваний:
108
Добавлен:
13.05.2015
Размер:
5.96 Mб
Скачать

2. Блок ‑ схема

Шаги алгоритма изображаются в виде специальных графических симво­лов (рис.1.1.1), которые связываются линиями передачи управления (рис. 1.1.2).

Начало, конец, прерывание Подпрограмма

Ввод или вывод данных Вывод на принтер

Линейный процесс Проверка условия

Магнитный диск Магнитная лента

Сортировка Дисплей

Межстраничный

Соединитель соединитель

Рис. 1.1.1. Основные графические символы блок‑схем

Рис. 1.1.2. Блок‑схем алгоритма Евклида - нахождения НОД

Лист бумаги делится на колонки и строки. Строки нумеруются, а ко­лон­ки обозначаются латинскими буквами. В одной ячейке (зоне) разме­ща­ет­ся один графический символ. Адрес зоны обозначается именем колонки и номером строки (B3). В соединителе указывается адрес зоны (куда или от­куда передается управление). В межстраничном соединителе допол­ни­тель­но указывается номер листа.

Достоинство: наглядность;недостаток:трудоем­кость разработки.

3. Псевдокоды

Псевдокоды - полуформальный язык, в котором вводятся ключевые слова, имеющие однозначное толкование. Эти слова выделяются в тексте (цветом, толщиной, размером букв, шрифтом). За ключевым словом на естественном языке описывается шаг алгоритма.

Примералгоритма Евклида

Алгоритм‑ определение наибольшего общего делителя чисел А, В.

Ввод двух чисел A, B.

Делать покаА не равно В.

ЕслиА>ВТоА=А-ВИначеВ=В-АКонец если

Конец делать

Вывестизначение А на печать.

Конец алгоритма

Достоинства: универсальность, возможность постепенной детализации, близость к программе (ключевые слова подобны командам).Недостаток: уступает по наглядности блок-схеме.

4. Метод HIPO (иерархия, ввод, обработка, вывод). Исполь­зуется для описания больших программных проектов. Проект состоит из оглавления, обзорных и детальных таблиц. В оглавлении указываются назначение проекта и список основных функций. Каждая функция в дальнейшем расписывается в виде иерархической системы обзорных таблиц. Каждой обзорной таблице присваивается код, который включает в себя код вышестоящей таблицы (через точку); таким образом, код показывает ветвь проекта (1.2, 1.2.1, 1.2.2). Детальные таблицы заканчивают описание всего проекта и являются терминальными таблицами в дереве обзорных таблиц. Детальная таблица состоит из трех колонок: входная информация, обработка и выходная информация.

Достоинства: структурность, возможность постепенной дета­лизации;недостаток: неудобна для малых проектов.

1.2. Языки программирования

Язык программирования‑ это алгоритмический язык, не­пос­ред­ст­вен­­­но воспринимаемый компьютером.

Программа‑ полное и точное описание алгоритма на языке програм­мирования.

Классификация языков по уровню ав­то­­матизации программи­ро­вания

1. Машинно-ориентированные языки: машинные и ассемблеры (языки, в которых числовые адреса и коды заменены на символьные обозначения).

Достоинства: максимальная эффективность, использование всех воз­мож­­­ностей компьютера;недостатки: трудоемкость, непереноси­мость программ на другие плат­фор­мы. Используются в тех случаях, когда возможности языков прог­рам­­ми­ро­вания недостаточны.

2. Процедурно‑ориентированные языки:содержат средства авто­ма­­ти­за­ции наиболее часто используемых процедур обработки данных. Одна команда генерирует множество машинных команд.

Достоинства: снижение трудоемкости разработки программ, переноси­мость программ на различные платформы.Недостатки: не все возможности компьютера используются, более низкая эффективность.

Примеры: языки Visual C++, Delphi, Visual Basic.

3. Проблемно‑ориентированные языки: автоматизируют разработку це­лых задач пользователя. Обычно пользователь описывает то, что нужно получить в результате решения задачи, а сам язык позволяет строить алгоритм и программы, реализующие поставленную цель.

Примером являются пакеты программ: “Галактика”, “1C ‑ бухгалтерия”.

Достоинство:максимальная автоматизация;недостатки:более низ­­кая эффективность и не все возможности компьютера используются.

Современные языки программирования включают в себя элементы языков трех уровней.

Основные термины языка программирования

Алфавит языка‑ набор допустимых элементарных знаков.

Слово(лексема) ‑ элементарная неделимая конструкция языка, имеющая опре­де­лен­ный смысл.

Словарь‑ набор допустимых слов. Обычно слова из словаря являются зарезервированными словами и их нельзя использовать в качестве идентификаторов пользователя.

Лексика языка‑ словарный запас с описанием способов представления слов.

Предложение(утверждение, команда, оператор) ‑ группа слов, построенная согласно синтаксису.

Семантика‑ описание смысла предложения.

Грамматика языка‑ набор правил синтаксиса.

Формы описания языков программирования (метаязыки)

Метаязык ‑ это язык для описания другого языка. Перечислим основные метаязыки: