Алгоритм, аспекты его рассмотрения — КиберПедия 

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

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

Алгоритм, аспекты его рассмотрения

2019-07-13 159
Алгоритм, аспекты его рассмотрения 0.00 из 5.00 0 оценок
Заказать работу

ЛЕКЦИЯ 2

2. ОСНОВНЫЕ ПОНЯТИЯ ПРОГРАММИРОВАНИЯ /3-5,8-10/

------------------------------------------------------------------------------------------------------------------

Вводный комментарий

Алгоритм, аспекты его рассмотрения

2.2.1.Основные понятия

2.2.2.Свойства алгоритмов

2.2.3.Способы описания алгоритмов

Базовые алгоритмические структуры

Алгоритмические языки: эволюция и классификация

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

Элементы языков программирования

Способы описания синтаксиса

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

Системы программирования

Библиотеки подпрограмм

Обработка исключительных ситуаций

-----------------------------------------------------------------------------------------------------------------

Вводный комментарий

Алгоритм, аспекты его рассмотрения

2.2.1. Основные понятия

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

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

Параметры, характеризующие алгоритм:

1) совокупность возможных исходных данных;

2) совокупность возможных результатов;

3) совокупность возможных промежуточных результатов;

4) правило начала алгоритма;

5) правило непосредственной переработки;

6) правило окончания алгоритма;

7) правило извлечения результатов.

2.2.2. Свойства алгоритмов

1. Дискретность.

2. Детерминированность (определенность).

3. Конечность.

4. Массовость.

5. Эффективность.

2.2.3. Способы описания алгоритмов

Блок-схема – это графическое представление хода решения задачи на ВМ.

 

 

Таблица 2.1

Графические обозначения функций в блок-схеме

Функция Обозначение
      начало/конец алгоритма
      ввод/вывод данных
      блок выполнения действия
      блок разрешения условия

Пример блок-схемы алгоритма, реализующего поиск наименьшего из трех чисел a, b и c, представлен на рис. 2.1.

 

 

 


                          +                         +

 

 

                    -                    -

 

                        -

 

                    +

 

Рис. 2.1. Блок-схема поиска наименьшего из трех чисел

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

Алгоритмический язык – это способ описания алгоритма, понятный человеку и машине.


 

Базовые алгоритмические структуры

 

 

 


Рис. 2.2. Алгоритмическая структура следование

 
 

 


нет(-)              да(+)

 

 

а) выбор

 
 

 

 


                          ...

 

 

б) развилка

Рис. 2.3. Алгоритмическая структура разрешения условия

(B – логическое условие)


 

 

 

 
а) цикл DO б) цикл WHILE

Рис. 2.4. Алгоритмическая структура цикл (В – логическое условие)

Способы описания синтаксиса

Металингвистические формулы Бэкуса-Наура (язык БНФ) и синтаксические диаграммы.

Таблица 2.4

Метасимволы

Символ Значение
::= по определению есть
| либо (или)
< > содержимое (внутри скобок заключается понятие)

Примеры описания некоторых понятий АЯ с помощью языка БНФ.

1. <идентификатор>::= <буква> | <имя> <буква> | <имя> <цифра>

2. <логическая константа>::= <.TRUE.> | <.FALSE.>           (язык Фортран)

3.   <выражение>::= <арифметическое> | <символьное> | <логическое>

<арифметическое>::= <числ.перем.> | <числ.константа> |

<числ.перем.><арифм.операция><числ.константа>

<числ.перем.>::= <идентификатор> | <имя встроенной арифм. функции>

<арифм.операция>::= <+> | <-> | </> | <*>

<имя встроенной арифм. функции>::= <sin> | <cos> | <sqrt>

Синтаксическая диаграмма графически изображает структуру конструкций языка (его предложений).

Примеры синтаксических диаграмм приведены на рис. 2.5.

 


                                                                                      n – количество символов,

                                                                                            распознаваемое

                                                                                            транслятором языка

                                                             n                        программирования

а) идентификатор

 


б) логическая константа (языка Фортран)

 


в) выражение

Рис. 2.5. Описание понятий АЯ с помощью синтаксических диаграмм

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

Оператор (statement, operator) - это законченная фраза языка, разделяющая некоторый вполне законченный этап обработки.

Метка - это имя, присваиваемое оператору программы и используемое в ней для обращения к этому оператору.

Идентификатор - это любая конечная последовательность букв и цифр, начинающаяся с буквы.

Ключевое слово (keyword) – зарезервированное слово языка программирования, по которому распознается синтаксическая конструкция.

Описание (declaration, specification) определяет свойства (атрибуты) объектов, действия над которыми определяют выполняемые операторы.

Переменная (variable) - это программный объект, способный принимать значение.

Константа (constant) - это программный объект, который не меняет своего значения в течение всего времени выполнения программы.

Выражение (expression)-это языковая конструкция для вычисления значения, состоящая из операндов и операций.

Операнд (operand) - это часть машинной команды, определяющая объект в выражении, над которым выполняется операция.

Команда (instruction, command) - это значимое выражение, определяющее одну операцию и ее операнды; описание операции, которую должна выполнить ВМ.

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

Программа (program)- это последовательность операторов языка программирования, описывающая алгоритм решения задачи.

Подпрограмма - это программа, являющаяся частью другой программы и удовлетворяющая требованиям, которые ЯП предъявляет к структуре программы.

Процедура (procedure) представляет собой некоторый вполне законченный этап решения задачи.

Класс (class)- это множество объектов, имеющих общую структуру и поведение, в частности, это абстрактный (производный) тип данных, вводимый пользователем.

Системы программирования

Таблица 2.5

Классификация систем программирования

Признак классификации Типы

Набор исходных языков

Одноязыковые
Многоязыковые

Возможности расширения

Замкнутые
Открытые

Трансляция

Компиляция
Интерпретация

Рисунок 2.6.

Библиотеки подпрограмм

 

 


Рис. 2.7. Компиляция статической и динамической библиотек

Finally

<обработчик завершения>

Синтаксис обработки исключений: try

<защищенный блок>

exept <фильтр исключений>

<обработчик исключений>


 

 

 


Рис. 2.6. Схема разработки прикладных программ в среде системы программирования

ЛЕКЦИЯ 2

2. ОСНОВНЫЕ ПОНЯТИЯ ПРОГРАММИРОВАНИЯ /3-5,8-10/

------------------------------------------------------------------------------------------------------------------

Вводный комментарий

Алгоритм, аспекты его рассмотрения

2.2.1.Основные понятия

2.2.2.Свойства алгоритмов

2.2.3.Способы описания алгоритмов


Поделиться с друзьями:

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.034 с.