ЗНАЕТЕ ЛИ ВЫ?

Понятие алгоритма. Основы алгоритмизации. Структурный подход



Алгоритм - это точное и понятное предписание

исполнителю совершить последовательность действий, направленных на решение поставленной задачи.

Свойства:

1.Понятность - т.е. исполнитель алгоритма должен знать, как его выполнять.

2.Дискpетность (прерывность) - т.е. алгоpитм должен пpедставлять пpоцесс pешения задачи как последовательное выполнение пpостых шагов (этапов).

3.Опpеделенность - т.е. каждое пpавило алгоpитма должно быть четким, однозначным и не оставлять места для пpоизвола. Благодаpя этому свойству выполнение алгоpитма носит механический хаpактеp и не тpебует никаких дополнительных указаний или сведений о pешаемой задаче.

4.Pезультативность (или конечность). Это свойство состоит в том, что алгоpитм должен пpиводить к pешению задачи за конечное число шагов.

5.Массовость. Это означает, что алгоpитм pешения задачи pазpабатывается в общем виде, т.е. он должен быть пpименим для некотоpого класса задач, pазличающихся лишь исходными данными. Пpи этом исходные данные могут выбиpаться из некотоpой области, котоpая называется областью пpименимости алгоpитма.

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

Любой алгоритм связан с преобразованием информации. При этом под информацией понимают конкретные величины( численные, текстовые, графические). Элементарной структурной единицей любого алгоритма является простая команда, обозначающая один элементарный шаг в переработке или отображении информации. Переработка информации при алгоритмизации состоит в изменении величины, с которой работает алгоритм. Величины можно разбить на постоянные и переменные. Значения переменных величин могут быть изменены с помощью команды присваивания. Из простых команд и проверки условий образуется состав команды. Он состоит из :

1.Следование (образуется из последовательности команд)

2.Ветвление (осуществляет выбор одного из возможных действий в зависимости от условий)

3.Команда цикла (большой алгоритм содержит серии команд)

Структурный подход

Любой алгоритм может быть построен с использованием только базовых конструкций, а именно: следование, ветвление и цикл. Это так называемая структурная теория Дейкстра. Она превращает построение алгоритма в сборку его конструкций, изменяющих набор базовых конструкций. Собирает механизм из конечного набора имеющихся в детали. Сборка алгоритма может происходить 2 путями:

1.Базовый элемент могут объединить в последовательность, образующую конструкцию следования. Каждая базовая конструкция имеет один вход и выход.

2.Одна базовая конструкция может вкладываться в другую, образую вложенную. Таким образом, алгоритм строится в несколько этапов. Сначала он формируется в самых общих чертах, а затем уточняется путем детализирования более крупных действий через более малые. Это способ пошаговой детализации

25. Языки программирования. Системы программирования.
Системой программирования называется комплекс программ, предназначенный для автоматизации программирования задач на ЭВМ. Система программирования освобождает проблемного пользователя или прикладного программиста от необходимости написания программ решения своих задач на неудобном для него языке машинных команд, и предоставляют им возможность использовать специальные языки более высокого уровня. Для каждого из таких языков, называемых входными или исходными, система программирования имеет программу, осуществляющую автоматический перевод (трансляцию) текстов программы с входного языка на язык машины. Обычно система программирования содержит описания применяемых языков программирования, программы-трансляторы с этих языков, а также развитую библиотеку стандартных подпрограмм. Важно различать язык программирования и реализацию языка.

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

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

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

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

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





Последнее изменение этой страницы: 2017-01-26; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.238.107.166 (0.007 с.)