- •Экзаменационный вопрос №1 базовые понятия алгоритмизации
- •Экзаменационный вопрос №2 средства изображения алгоритмов
- •Экзаменационный вопрос № 3 базовые канонические структуры алгоритмов
- •Экзаменационный вопрос № 16. Общая характеристика языка программирования паскаль
- •Экзаменационный вопрос № 17. Программирование ввода-вывода данных различного типа
- •Экзаменационный вопрос № 18. Программирование линейных вычислительных процессов
- •Экзаменационный вопрос № 19. Программирование разветвляющихся вычислительных процессов с использованием if -then –else
- •Экзаменационный вопрос № 20. Программирование разветвляющихся вычислительных процессов с использованием оператора case
- •Экзаменационный вопрос № 21.
- •Экзаменационный вопрос № 22. Программа вычисления корней квадратного уравнения
- •Экзаменационный вопрос № 23. Программирование разветвляющихся структур с использованием в цикле операторов repeat – until
- •Экзаменационный вопрос № 24. Программа вычисления суммы бесконечного ряда
- •Экзаменационный вопрос № 25. Программирование циклических вычислительных структур
- •Экзаменационный вопрос № 26. Программирование с использованием цикла с параметрами
- •Экзаменационный вопрос № 27. Программирование циклов с постусловием
- •Экзаменационный вопрос № 28. Программирование с использованием подпрограмм
- •Экзаменационный вопрос № 29. Алгоритмы нахождения корней уравнений
- •Экзаменационный вопрос № 30. Алгоритмы численного интегрирования
- •Экзаменационный вопрос № 31. Программа вычисления определенного интеграла методом прямоугольников
- •Экзаменационный вопрос № 32. Программа вычисления определенного интеграла методом трапеций
- •Экзаменационный вопрос № 33. Программа вычисления определенного интеграла методом симпсона
- •Экзаменационный вопрос № 34. Программа вычисления корней алгебраического уравнения методом половинного деления
- •Экзаменационный вопрос № 35. Программа вычисления корней алгебраического уравнения методом ньютона
- •Экзаменационный вопрос № 36. Программа вычисления корней алгебраического уравнения методом хорд
- •Экзаменационный вопрос № 37. Программирование операций в одномерных массивах
- •Экзаменационный вопрос № 38. Программирование операций в двумерных массивах (На примере задания 1)
- •Экзаменационный вопрос № 39. Программирование операций в двумерных массивах (На примере задания 2)
- •Экзаменационный вопрос № 40. Построение графических изображений
- •Экзаменационный вопрос № 41. Программа для построения объекта с циклическим изменением цвета
- •Экзаменационный вопрос № 42. Программа для построения динамического объекта
Экзаменационный вопрос № 3 базовые канонические структуры алгоритмов
Описание последовательности действий блоками
-
одно или несколько -
циклический - ввод
вычислений процесс исходных
данных
-
решение или
проверка
-
вывод результатов на печать
условия
-
- вычисл. в
подпрограмме - начало и
конец блок-схемы алгоритма
Существует три типа алгоритмов:
Линейной структуры называется алгоритм в котором блоки выполняются последовательно друг за другом
начало
a,b,c,d
X=a+b
Y=c+d
Z=x+y
z
z
=
x+y;
x = a+b;
y
=
c+d
Р
азветвляющейся
структуры называется алгоритм в котором
вычислительный процесс происходит в
зависимости от логического условия
a, b
a+b, a<by
= a+b,
a=b
a
<b
>b
a*b, a>b
Y = a+b
Y = a-b
Y = a-b
y
3. Циклической структуры называется алгоритм, в котором результат достигается многократным вычислением формул при различных значениях входящих в них величин
z
= x+y
начало
x
= 5 ввод
x,h
y
Y=1,20,h
= 1,20h
Z=x+y
= 1
Z
Экзаменационный вопрос № 4 СТРУКТУРНЫЙ МЕТОД ПРОГРАММИРОВАНИЯ
Сущность структурного подхода к разработке программ заключается в декомпозиции (разбиении) системы на автоматизируемые функции, которые в свою очередь делятся на подфункции, на задачи и так далее. Процесс декомпозиции продолжается вплоть до определения конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимосвязаны. В основе структурного метода лежит метод разбивки системы на множество независимых задач, доступных для понимания и решения; иерархическое упорядочивание, т.е. организация составных частей проблемы в древовидные структуры с добавлением новых деталей на каждом уровне. К основным принципам структурного подхода относятся: абстрагиро-вание, т.е. выделение существенных аспектов системы и отвлечение от несущественных; формализация, т.е. общее методологическое решение проблемы; непротиворечивость, состоящая в обосновании и согласовании элементов системы; иерархическая структуризация данных. При структурном анализе применяются три наиболее распространенные модели проектирования программ:
На стадии проектирования программ эти модели расширяются, уточняются и дополняются диаграммами, отражающими структуру или архитектуру системы, структурные схемы программ и диаграммы экранных форм.
Экзаменационный вопрос № 5 МЕТОД ФУНКЦИОНАЛЬНОГО МОДЕЛИРОВАНИЯ ПРОГРАММ - SADT (STRUCTURED ANALYSIS AND DESIGN TECHNIQUE) На основе метода, предложенного Д.Россом, разработана методология , которая является основной частью программы ICAM (Интеграция компьютерных и промышленных технологий). Методология представляет собой совокупность методов, правил и процедур, предназначенных для построения функциональной модели предметной области, которая отображает функциональную структуру, производимые функции и действия, а также связи между ними. Основные элементы этого метода базируются на ряде положений: графическое представление структуры системы диаграммами, отображающими функции в виде блоков, а интерфейсы (вход/выход) - дугами, соответственно входящими в блок и выходящими из него. Взаимодействие блоков друг с другом описывается в виде ограничений, которые определяют условия управления и выполнения функции;
Метод применяется при моделировании широкого круга систем, для которых определяются требования и функции, а затем проводится их реализация. Средства метода могут применяться при анализе функций в действующей программе, а также при определении способов их реализации. Результат применения метода - модель, которая состоит из диаграмм, фрагментов текстов и глоссария со ссылками друг на друга. Все функции и интерфейсы представляются диаграммами в виде блоков и дуг. Место соединения дуги с блоком определяет тип интерфейса. Управляющая информация входит в блок сверху, в то время как информация, которая подвергается обработке, указывается с левой стороны блока, а результаты выхода - с правой стороны. Одна из наиболее важных особенностей метода - постепенная детализация модели системы по мере добавления диаграмм, уточняющих эту модель.
Экзаменационный вопрос № 6 МЕТОД СТРУКТУРНОГО ПРОЕКТИРОВАНИЯ ПРОГРАММ - SSADM (STRUCTURED SYSTEMS ANALYSIS AND DESIGN METHOD) Метод SSADM базируется на таких структурных диаграммах, как последовательность, выбор и итерация. Моделируемый объект задается последовательностью групп, операторами выбора из группы и циклическим выполнением отдельных элементов.
Базовая диаграмма - иерархическая и включает в себя: список компонентов описываемого объекта; идентифицированные группы выбранных и повторяемых компонентов, а также последовательно используемых компонентов. Данный метод представлен моделью со следующими этапами разработки программного проекта:
Детальное обследование предметной области проводится для того, чтобы изучить ее особенности, рассмотреть потребности и предложения заказчика, провести анализ требований из разных документов, специфировать их и согласовать с заказчиком. Цель стратегического проектирования - определение области действия проекта, анализ информационных потоков, формирование общего представления об архитектуре системы, затратах на разработку и подтверждение возможности дальнейшей реализации проекта. Результат - спецификация требований, которая применяется при разработке логической структуры системы. Логическое проектирование - это определение функций, диалога, метода построения и обновления базы данных. В логической модели отображаются входные и выходных данные, прохождение запросов и установка связей между сущностями и событиями.
Физическое проектирование - это определение и представления данных с учетом спецификации логической модели данных, ограничений на память и времени обработки, а также определение механизмов доступа, размера логической структуры. Результат - создание документа, включающего в себя
Конструирование - это программирование элементов системы и их тестирование на наборах данных, которые подбираются на ранних этапах разработки системы. Проектирование системы является управляемым и контролируемым. Создается сетевой график, учитывающий работы по разработке системы, затраты и сроки. Слежение и контроль выполнения плана проводит организационный отдел. Проект системы задается структурной моделью, в которой содержатся работы и взаимосвязи между ними и их исполнителями, а потоки проектных документов между этапами отображаются в сетевом графике. Результаты каждого из этапов контролируются и передаются на следующий этап в виде, удобном для дальнейшей реализации другими исполнителями.
Экзаменационный вопрос № 7 ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ МЕТОД
Объектно-ориентированный подход (ООП) - стратегия разработки, в рамках которой разработчики системы вместо операций и функций мыслят объектами. Объект - это предмет внешнего мира, некоторая сущность, пребывающая в различных состояниях и имеющая множество операций. Операции задают сервисы, предоставляемые объектам для выполнения определенных вычислений, а состояние - это набор атрибутов объекта, поведение которых изменяет это состояние. Объекты группируются в класс, который служит шаблоном для включения описания всех атрибутов и операций, связанных с объектами данного класса. Программная система содержит взаимодействующие объекты, имеющие собственное локальное состояние и набор операций для определения состояний других объектов. Объекты скрывают информацию о представлении состояний и ограничивают к ним доступ. Под процессом в ООП понимается проектирование классов объектов и взаимоотношений между ними.
Процесс разработки включает в себя следующие этапы:
Приведенные этапы могут выполняться итерационно друг за другом и с возвратом к предыдущему этапу. На каждом этапе может применяться одна и та же система нотаций. Переход к следующему этапу приводит к усовершенствованию результатов предыдущего этапа путем более детальной реализации ранее определенных классов объектов и добавления новых классов. Результат процесса анализа жизненного цикла (ЖЦ) - модель архитектуры, модель окружения и использования, полученных на этапах процесса ЖЦ. Модели отображают связи между объектами, их состояния и набор операций для динамического изменения состояния других объектов, а также взаимоотношения со средой. Объекты инкапсулируют информацию об их состоянии и ограничивают к ним доступ. Модели окружения и использования системы - это две взаимно дополняющие друг друга модели связи системы со средой. Модель окружения системы - статическая модель, которая описывает другие подсистемы из пространства разрабатываемой ПС, а модель использования системы - динамическая модель, которая определяет взаимодействие системы со своей средой. Это взаимодействие определяется последовательностью запросов к сервисам объектов и ответных реакцией системы после выполнения запроса. После определения взаимодействий между объектами проектируемой системы и ее окружением, полученные данные используются для разработки архитектуры системы из объектов, созданных в предыдущих подсистемах и проектах. Существует два типа моделей системной архитектуры:
- динамическая модель описывает динамическую структуру системы и взаимодействие между объектами во время выполнения системы.
Экзаменационный вопрос № 8 КОМПОНЕНТНЫЙ ПОДХОД К ПРОГРАММИРОВАНИЮ
По оценкам экспертов, 75 % работ по программированию в информационном мире дублируются (например, программы складского учета, начисления зарплаты, расчета затрат на производство продукции и т.п.). Большинство из этих программ типовые, но каждый раз находятся особенности, которые влияют на их повторную разработку. Компонентное проектирование сложных программ из готовых компонентов является наиболее производительным. Переход к компонентам происходил эволюционно: от подпрограмм, модулей, функций. При этом усовершенствовались элементы, методы их композиции и накопления для дальнейшего использования. Компонентный подход дополняет и расширяет существующие подходы в программировании. Компоненты конструируются как некоторая абстракция, включающая в себя информационный раздел и артефакты (спецификация, код, контейнер и др.). В этом разделе содержатся сведения: назначение, дата изготовления, условия применения (ОС, среда, платформа и т.п.). Артефакт - это реализация (implementation), интерфейс (interface) и схема развертывания (deployment) компонента. Реализация - это код, который будет выполняться при обращении к операциям, определенным в интерфейсах компонента. Компонент может иметь несколько реализаций в зависимости от операционной среды, модели данных. Для описания компонентов, как правило, применяются языки в которых понятие интерфейса и класса – базовые.
Интерфейс отображает операции обращения к реализации компонента, описывается в языках IDL или APL, включает в себя описание типов и операции передачи аргументов и результатов для взаимодействия компонентов. Компонент, как физическая сущность, может иметь множество интерфейсов. Развертывание - это выполнение физического файла в соответствии с конфигурацией (версией), параметрами настройки для запуска на выполнение компонента. Компоненты наследуются в виде классов и используются в модели, композиции и в каркасе (Фреймворке) интегрированной среды. Управление компонентами проводится на архитектурном, компонентном или интерфейсном уровнях, между которыми существует взаимная связь. Компонент описывается в языке программирования, не зависит от операционной среды и от реальной платформы где он будет функционировать. Компонентная модель - отражает проектные решения по композиции компонентов, определяет типы шаблонов компонентов и допустимые между ними взаимодействия, а также является источником формирования файла развертывания ПС в среде функционирования. Каркас - представляет собой высокоуровневую абстракцию проекта ПС, в которой функции компонентов отделены от задач управления ими. Например, бизнес-логика - это функция компонента, а каркас - управление ими. Каркас объединяет множество взаимодействующих между собою объектов в некоторую интегрированную среду для решения заданной конечной цели. В зависимости от специализации каркас называют "белым или черным ящиком". Каркас типа "белый ящик" включает абстрактные классы для представления цели объекта и его интерфейса. При реализации эти классы наследуются в конкретные классы с указанием соответствующих методов реализации. Для каркаса типа "черный ящик" в его видимую часть выносятся точки, разрешающие изменять входы и выходы. Композиция компонентов может быть следующих типов:
Экзаменационный вопрос № 9. МЕТОДОЛОГИЯ КОМПОНЕНТНОЙ РАЗРАБОТКИ ПРОГРАММНЫХ СИСТЕМ
Создание компонентной системы начинается с анализа и построения концептуальной модели, на основе которой создается компонентная модель, включающая проектные решения по композиции компонентов, использованию разных типов шаблонов, связей между ними и операции развертывания ПС в среде функционирования.
- Поиск, выбор ПИК и разработка новых компонентов, исходя из системы классификации компонентов и их каталогизации, формализованное определение спецификаций интерфейсов, поведения и функциональности компонентов, а также их аннотирования и размещения в репозитарии системы или в Интернет. - Разработка требований (Requirements) к ПС - это формирование и описание функциональных, нефункциональных и др. свойств ПС. - Анализ поведения (Behavioral Analysis) ПС заключается в определении функций системы, деталей проектирования и методов их выполнения. - Спецификация интерфейсов и взаимодействий компонентов (Interface and Interaction Specification) отражает распределение ролей компонентов, интерфейсов, их идентификацию и взаимодействие компонентов через поток действий (workflow). - Интеграция набора компонентов и ПИК (Application Assembly and Component Reuse) в единую среду основывается на подборе и адаптации ПИК, определении совокупности правил, условий интеграции и построении конфигурации каркаса системы. - Тестирование компонентов и среды (Component Testing) основывается на методах верификации и тестирования для проверки правильности как отдельных компонентов и ПИК, так и интегрированной из компонентов ПС. - Развертывание (System Deployment) включает оптимизацию плана компонентной конфигурации с учетом среды пользователя, развертку отдельных компонентов и создание целевой компонентной конфигурации для функционирования ПС. - Сопровождения ПС (System Support and Maintenance) состоит из анализа ошибок и отказов при функционировании ПС, поиска и исправления ошибок, повторного ее тестирования и адаптации новых компонентов к требованиям и условиям интегрированной среды.
Экзаменационный вопрос № 10. АСПЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ
Аспектно-ориентированное программирование (АОП) - это парадигма построения гибких к изменению ПС путем добавления новых аспектов (функций), обеспечивающих безопасность, взаимодействие компонентов с другой средой, также синхронизацию одновременного доступа частей ПС к данным и вызов новых общесистемных средств. Аспектом может быть фрагмент программы, реализующий концепцию взаимодействия компонентов в среде, защиту данных и др. ПС, которая создается из ПИК, объектов, небольших методов и аспектов, дополняется необходимыми фрагментами взаимодействия, синхронизации, защиты и т.п. путем встраивания их в точки компонентов ПС, где они необходимы. В результате встроенные фрагменты дополняют компоненты новым содержательным аспектом и тем самым значительно усложняют процесс вычислений. Практическая реализация аспектов, размещенных в разных частях элементов ПС, обеспечивается механизмом перекрестных ссылок и точками соединения, через которые осуществляется связь с аспектным фрагментом для получения определенной дополнительной функции. В основе АОП лежит метод разбиения задач на ряд функциональных компонентов, определения необходимости применения разного рода дополнительных аспектов и установления точек расположения аспектов в отдельных компонентах, где это требуется. Эти работы выполняются на этапах ЖЦ процесса разработки, способствуют реализации ПС с ориентацией на взаимодействие компонентов или их синхронизацию. Такой подход известен при проведении отладки программ, когда фрагменты отладочных программ встраиваются в отдельные точки исходной программы для выдачи промежуточных результатов. Когда отладка завершается успешно, эти участки удаляются. В случае аспектов - их программные фрагменты остаются в программе. Создание конечного продукта ПС в АОП выполняется по технологии, соответствующей разработке компонентных систем, с той особенностью, что используемые аспекты определяют особые условия выполнения компонентов в среде взаимодействия. Аспекты можно рассматривать как выполнение разных ролей взаимодействующими лицами, что приближает аспект к роли программного агента, выполняющего дополнительные функции при определении архитектуры системы и повышение качества компонентов. Для использования аспектов при выработке проектных решений используется механизм фильтрации входных сообщений, с помощью которых проводится изменение параметров и имен текстов аспектов в конкретно заданном компоненте системы. Код компонента становится "нечистым", когда он пересечен аспектами, и при композиции с другими компонентами общие средства становятся недостаточными. Это так как аспекты требуют декларативного сцепления описаний и связано с тем, что фрагменты находятся или берутся из различных объектов. Один из механизмов композиции компонентов и аспектов - фильтр композиции, который обновляет аспекты без изменения функциональных возможностей. Фактически фильтрация касается входных и выходных параметров сообщений, которые переопределяют соответствующие имена объектов. Иными словами, фильтры делегируют внутренним частям компонентов параметры, переадресовывая ранее установленные ссылки, проверяют и размещают в буфере сообщений, локализуют ограничения и готовят компонент для выполнения. Существенной особенностью АОП является построение модели, которая пересекает структуру другой модели, для которой первая модель является аспектом. Так как аспект связан с моделью, то ее можно перестроить так, чтобы аспект стал, например, модулем и выполнял функцию посредника, реализуя шаблоны взаимодействия. Один из недостатков - пересечение отдельных компонентов аспектами может привести к понижению эффективности их выполнения. Переплетение аспектов с компонентами проявиться на последующих этапах процесса разработки и поэтому требуется минимизация количества сцеплений между аспектами и компонентами через ссылки в вариантах использования, сопоставление с шаблоном или блоком кода, в котором установлены перекрестные ссылки. В ходе анализа ПрО и построении ее характеристической модели устанавливается связь с дополнительными аспектами, что приводит к статическому или "жесткому" связыванию компонентов и аспектов модели, учету этого случая при компиляции. Аспекты с точки зрения моделирования можно рассматривать как каркасы декомпозиции системы с многократным использованием. АОП становится мультипарадигмовой концепцией, сущность которой состоит в том, что разным аспектам проектируемой ПС, должны отвечать разные парадигмы программирования. Каждая из парадигм относительно реализации разных аспектов ПС (синхронизации, внедрения, обработки ошибок и др.) требует их усовершенствования и обобщения для каждой новой программы. В АОП используется модель модульных расширений в рамках метамодельного программирования, которая обеспечивает оперативное использование новых механизмов композиции отдельных частей ПС или их семейств с учетом предметно-ориентированных возможностей языков (например, SQL) и каркасов, которые поддерживают аспекты. Технология разработки прикладной системы с использованием АОП включает общие этапы:
Экзаменационный вопрос № 11. ГЕНЕРИРУЮЩЕЕ (ПОРОЖДАЮЩЕЕ) ПРОГРАММИРОВАНИЕ
Генерирующее программирование (generatе programming) - генерация семейств приложений из отдельных элементов компонентов, аспектов, сервисов, каркасов и т.п. В нем используются разные методы программирования. Главный элемент - это семейство ПС или конкретные его экземпляры, которые генерируются на основе общей генерирующей модели домена (generative domain model) и включающей в себя средства определения членов (представителей) семейства, методы сборки членов семейства и базу конфигурации с набором правил развертывания в операционной среде. Базовый код элементов содержит целевой код по обеспечению процедур компиляции, отладки, визуализации и др. Фактически компоненты этих библиотек - это интеллектуальные агенты, генерирующие новых агентов в расширяемой среде программирования для решения конкретных задачи ПрО. Эта среда содержит специальные метапрограммы и компоненты библиотек для осуществления отладки, проверки композиции и взаимодействия компонентов. Среда пополняется новыми сгенерированными компонентами для членов семейства, в качестве компонентов многоразового применения. Основные этапы инженерии:
Технологическая схема инженерии ПрО Генерация модели для семейства ПС основывается на модели характеристик, наборе компонентов реализации задач, совокупности компонентов и их спецификациях. Результат генерации - готовая подсистема или отдельный член семейства.
Экзаменационный вопрос № 12. АГЕНТНОЕ ПРОГРАММИРОВАНИЕ
Понятие интеллектуального и программного агента появилось более 20 лет назад, их роль в программмировании все время возрастает]. Основной теоретический базис данного программирования - темпоральная, модальная и мультимодельная логики, дедуктивные методы доказательства правильности свойств агентов и др. С точки зрения программной инженерии, агент это самодостаточная программа, способная управлять своими действиями в информационной среде функционирования для получения результатов выполнения поставленной задачи и изменения текущего состояния среды. Агент обладает следующими свойствами:
Основными задачами программного агента являются:
С интеллектуальным агентом связаны знания типа убеждение, намерение, обязательства и т.п. Эти понятия входят в концептуальную модель и связываются между собой операционными планами реализации целей каждого агента. Для достижения целей интеллектуальные агенты взаимодействуют друг с другом, устанавливают связь между собой через сообщения или запросы и выполняют заданные действия или операции в соответствии с имеющимися знаниями. Основу агентно-ориентированного программирования составляют:
Агенты взаимодействуют между собой с помощью разных механизмов, а именно: координация, коммуникация, кооперация или коалиция.
Экзаменационный вопрос № 13. ТЕОРЕТИЧЕСКОЕ ПРОГРАММИРОВАНИЕ
Теоретическое программирование включает в себя формальные методы, основанные на спецификации программ, и методы, основанные на математических дисциплинах (логика, алгебра, комбинаторика) и обеспечивающие математический метод анализа и осмысления задач, а также разработку программ с математической символикой, правильность которых надо доказывать, чтобы получить на компьютере требуемые результаты. В связи с этим получили развитие отдельные направления в теории программирования, которые и предоставляют аппарат конструирования структур программ с применением математических методов. Так, направление, связанное с использованием математического аппарата для описания действий над объектами как алгебраические операции базовых основ алгебры, получило название алгебраического программирования, алгоритмики и др. Алгебраическое программирование (АП) - это конструирование программ с алгебраическими преобразованиями и функциями интеллектуальных агентов. В основе математического аппарата АП лежит алгебра языка действий АL (Action Language) и понятие транзитивной системы, в качестве механизма определения поведения систем и механизмов ее эквивалентности. В качестве понятий в общем случае могут быть компоненты, программы и их спецификации, объекты, взаимодействующие друг с другом и со средой их существования. Основу АП составляет математическая модель, которая включает в себя следующие понятия:
Программа - набор параметров и начальных агентных выражений. Параметры могут быть фиксированные и переменные, изменяющиеся при переходе от одной среды в другую. Особенно это касается параметров развертывания.
Экзаменационный вопрос № 14. ЭКСПЛИКАТИВНОЕ ПРОГРАММИРОВАНИЕ
Экспликативное программирование (ЭП) ориентировано на разработку теории дескриптивных и декларативных программных формализмов, адекватных моделям структур данных, программ и средств конструирования из них программ. Для этих структур решены проблемы существования, единства и эффективности. Теоретическую основу ЭП составляют логика, конструктивная математика, информатика, композиционное программирование и классическая теории алгоритмов. Для изображения алгоритмов программ используются алгоритмические языки и методы программирования: функциональное, логическое, структурное, денотационное и др. Принципами ЭП являются:
Развитие понятия функции осуществляется с помощью принципа композиционности, т.е. составления программ (функций) из более простых программ для создания новых объектов с более сложными именами (дескрипциями) для функций. Они включают номинативные (именные) и языковые выражения, термы и формулы. Таким образом, процесс развития программы осуществляется в виде цепочки понятий: данные - функция - имя функции - композиция - дескрипция. Из них триада - "данные - функция - композиция" задает семантический аспект программы, а триада "данные - имя функции - дескрипция" - синтаксический аспект. Главным в ЭП является семантический аспект, система композиций и номинативности (КНС), ориентированная на систематическое описание номинативных отношений при построении данных, функций, композиций и дескрипций.
КНС
содержит специальные языковые системы
для описания разнообразных классов
функций, которые называются
композиционно-номинативными языками
функций. Такие системы тесно связаны
с алгебрами функций и данных, построены
в семантико- синтаксическом стиле.
Они отличается от традиционных систем
(моделей
программ)
теоретико-функциональным подходом,
классами однозначных
Экзаменационный вопрос № 15. АЛГОРИТМИКА ПРОГРАММ
Алгоритмика программ - структурная схемотология построения последовательных и параллельных программ с аппаратом формальных алгебраических преобразований и канонических форм описания логических и операторных выражений. Ее основу составляют системы алгебраических алгебр (САА), расширенные формализмами для представления логических условий параллельных программ и методами символьной мультиобработки. Основными понятиями алгебры алгоритмики являются:
Объекты алгоритмики - модели алгоритмов и программ, представляемые в виде схем. Метод алгоритмики базируется на компьютерной алгебре и логике и используется для проектирования алгоритмов прикладных задач. Построенные алгоритмы описываются в ЯП и реализуются соответствующими системами программирования в машинное представление. В рамках алгоритмики разработаны специальные инструментальные средства реализации алгоритмов программ, которые используют современные объектно-ориентированные средства и метод моделирования UML. Тем самым обеспечивается полный цикл работ по практическому применению разработанной теории алгоритмики для реализации прикладных задач, начиная с постановки задачи, формирования требований и разработки алгоритмов до получения программ решения этих задач).
|
|||||||||||||||||||||||||||||||||||

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