- •5033.4350.0000-Пз
- •Введение
- •Теория алгоритмов
- •Исходные положения
- •Общее содержание второй части задания
- •Виды текстов алгоритмов
- •Ациклические двухполюсные структуры алгоритмов
- •Исходные условия
- •Комплект текстов алгоритмов
- •Этап э1: Подготовка стандартной полной формы формулы
- •Стандартная форма формулы алгоритма
- •Этап э2: Построение структурной схемы
- •Структурная схема алгоритма
- •Э21: Построение основной схемы – без оболочек
- •Э22: Группирование элементов
- •Э23: Проверочная нумерация оболочек
- •Э25 Повышение явного соответствия формул и схем
- •Э251 Явная операция разделения потоков
- •Э252 Разделение парных операций
- •Э253 Двухмерные структурные формулы
- •Э254 Псевдографика структурной схемы
- •Э255 Набор схемы графического тренажера
- •Этап э3: Работа с временной диаграммой алгоритма
- •Э31 Задание длительности исполнения команд
- •Э32 Построение временной диаграммы сетевого типа
- •Э33 Графический расчет длительности алгоритма
- •Э34 Аналитический расчет длительности алгоритма
- •Э4: Подготовка вербальных текстов алгоритма
- •Вта: Вербальные тексты алгоритмов
- •Дополнительные функциональные обозначения
- •ИнФ: Инфиксная форма
- •ИнФ': Неявная инфиксная форма
- •ПрФ: Префиксная форма
- •Ациклические многополюсные структуры алгоритмов
- •Исходные условия
- •Комплект текстов алгоритмов
- •Этап э1: Подготовка стандартной полной формы формулы
- •Стандартная форма формулы алгоритма
- •Этап э2: Построение структурной схемы
- •Структурная схема алгоритма
- •Построение основной схемы (без оболочек)
- •Этап э3: Работа с временной диаграммой алгоритма
- •Э31 Задание длительности исполнения команд
- •Э32 Построение временной диаграммы сетевого типа
- •Э33 Графический расчет длительности алгоритма
- •Э34 Аналитический расчет длительности алгоритма
- •Э4: Подготовка вербальных текстов алгоритма
- •Вта: Вербальные тексты алгоритмов
- •Дополнительные функциональные обозначения
- •Переключательные ациклические структуры алгоритмов
- •Концептуальная модель команды
- •Функции модели
- •Блок функций аппаратной модели команды
- •Индексация обозначений
- •Работа модели
- •Уточнение функции индикации
- •Работа с программной моделью команды в средеMathLab
- •Вывод схемы модели на экран
- •Построение временной диаграммы
- •Настройки дополнительных параметров диаграммы
- •Концептуальная модель алгоритма
- •Ациклические двухполюсные структуры алгоритмов
- •Модельная схема алгоритма
- •Функциональная система алгоритма
- •Программная модель алгоритма в средеMathLab
- •Подготовка файла модели
- •Формирование схемы моделиEnvMpma
- •Построение временной диаграммы
- •Заключение
ПрФ: Префиксная форма
ГИ: Горизонтальное исполнение
АлгПТ: Алгол-подобный текст / ПасПТ: Паскаль-подобный текст
ШТА: Шаблон текста алгоритма
// Исходная ИнФ: Инфиксная форма
A910 = (((Z1 Z2 (Z6 V (Z1 Z8))) & (Z3 Z4)) Z1) =
// Явное введение знака неявной операции вилки
= (((Z1Z2(Z6#V(Z1Z8)))#& (Z3Z4))Z1) =
= (((Z1Z2(Z6 #V(Z1Z8))) #& (Z3Z4))Z1) =
// ПрФ: Префиксная форма
// все операции (поэтапно) выносятся в префикс
= (((Z1Z2(Z6 #V(Z1Z8)))#&(Z3Z4))Z1)
= (((Z1Z2(Z6 #V(Z1,Z8)))#&(Z3Z4))Z1)
= (((Z1Z2(Z6 #V(Z1,Z8)))#&(Z3,Z4))Z1)
= (((Z1,Z2,(Z6 #V(Z1,Z8)))#&(Z3,Z4))Z1)
= (((Z1,Z2, #V(Z6,(Z1,Z8)))#&(Z3,Z4))Z1)
= (#&((Z1,Z2, #V(Z6,(Z1,Z8))),(Z3,Z4))Z1)
= (#&((Z1,Z2, #V(Z6,(Z1,Z8))),(Z3,Z4)),Z1)
A910 = (#&((Z1, Z2, #V(Z6, (Z1, Z8))),(Z3, Z4)),Z1)
A910 = (#&((Z1, Z2, #V(Z6, (Z1, Z8))),(Z3, Z4)),Z1)
ТЗО: Таблица замены обозначений
Общие замены обозначений | ||||||||||||
Компоненты ШТА |
Ai |
Zi |
= |
( |
) |
|
# |
& |
V
| |||
Компоненты РТА: |
alg Ai |
Zi |
: |
begin ( |
end ) |
seq |
par |
and |
or | |||
Специальные замены обозначений (для специальных пар знаков) | ||||||||||||
Компоненты ШТА |
#& |
#V |
| |||||||||
Компоненты РТА |
par_and |
par_or |
|
РТА: Рабочий текст алгоритма
вариант 1
A910: seq (par_and (seq (Z1, Z2, par_or (Z6, seq (Z1, Z8))), seq (Z3, Z4)), Z1)
вариант 2
A910: seq begin par_and begin seq begin Z1, Z2, par_or begin Z6, seq begin Z1, Z8 end end end, seq begin Z3, Z4 end end, Z1end
Допустимые сокращения:par-and=par
A910: seq begin par begin seq begin Z1, Z2, par_or begin Z6, seq begin Z1, Z8 end end end, seq begin Z3, Z4 end end, Z1end
ВИ: Вертикальное исполнение
ОкПТ: Оккам-подобный текст
// A910 = (#&((Z1, Z2, #V(Z6, (Z1, Z8))),(Z3, Z4)), Z1)
ШТА: Шаблон текста алгоритма |
РТА: Рабочий текст | |||
A910 = ( # & ( ( Z1 , Z2 , # V ( Z6 , ( Z1 , Z8 ) ) ) , ( Z3 , Z4 ) ) , Z1 ) |
A910= ( #& ( ( Z1, Z2, #V ( Z6, ( Z1, Z8 ) ) ), ( Z3, Z4 ) ), Z1 ) |
A910=
| #&
| |
| | | Z1, | | | Z2, | | | #V
| | | | Z6, | | | |
| | | | | Z1, | | | | | Z8
| |
| | | Z3, | | | Z4
| Z1
|
A910= | #& | | | | | Z1 | | | Z2 | | | #V | | | | Z6 | | | | | | | | | Z1 | | | | | Z8 | | | | | Z3 | | | Z4 | Z1 // Удаление // всех // запятых и // зачеркнутых // строк |
A910= seq par–and seq Z1 Z2 par–or Z6 seq Z1 Z8 seq Z3 Z4 Z1
|
Подстановка функций команд (операторы присваивания)
РТА: Рабочий текст алгоритма | |
alg A910: ya910 = Fa910(xa910): seq par–and seq Z1: yz1 := Fz1(xz1) Z2: yz2 := Fz2(xz2) par–or Z6: yz6 := Fz6(xz6) seq Z1: yz1 := Fz1(xz1) Z8: yz8 := Fz8(xz8) seq Z3: yz3 := Fz3(xz3) Z4: yz4 := Fz4(xz4) Z1: yz1 := Fz1(xz1)
|
alg A910: ya910 = Fa910(xa910) seq par–and seq yz1 := Fz1(xz1) yz2 := Fz2(xz2) par–or yz6 := Fz6(xz6) seq yz1 := Fz1(xz1) yz8 := Fz8(xz8) seq yz3 := Fz3(xz3) yz4 := Fz4(xz4) yz1 := Fz1(xz1)
|
Примечание. В синтаксис
Анализ:
синтаксис
семантика
прагматика – субъекты (автомат, персонал), присубъекты
Выводы