Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
10
Добавлен:
02.05.2014
Размер:
571.39 Кб
Скачать
          1. Автоматизация построений: си-подобный текст

СФА 1.2: Структурная формула алгоритма – общая для всех форм (ИнФ).

ГИ: Горизонтальное исполнение

Настройки: ИнФ / СиПТ / ГИ

ШТА 1.4: Шаблон текста алгоритма // Преобразованная формула

ВТА 1.7: Вербальный текст алгоритма

Начало

Окончание

Общий вид

ВИ: Вертикальное исполнение

Настройки: ИнФ / АлгПТ / ГИ

ВТА 1.8: Вербальный текст алгоритма

    1. КоФ: Комбинированная форма вербального текста: ИнПрПоФ

          1. Ги: Горизонтальное исполнение

АлгПТ: Алгол-подобный текст / ПасПТ: Паскаль-подобный текст

ШТА 1.5: Шаблон текста алгоритма

ИнФ: Инфиксная форма

A572 = (Z2  (((Z0 & Z8)  Z2) & Z3)  ((Z4 V (Z8  Z2)) V (Z6  Z7))) =

// Явное введение знака неявной операции разделения (вилки) потоков

= (Z2(((Z0#&Z8)Z2)#&Z3)((Z4#V(Z8Z2))#V(Z6Z7))) =

= (Z2(((Z0 #&Z8)Z2) #&Z3)((Z4 #V(Z8Z2)) #V(Z6Z7))) =

ИнПрПоФ: Инфикcно-префиксно-постфиксная форма

// инфиксная по операции , префиксная – по #, постфиксная – по &,V($)

= (Z2(((Z0 #&Z8)Z2) #&Z3)#((Z4 #V(Z8Z2)), (Z6Z7))V) =

= (Z2#(((Z0 #&Z8)Z2),Z3)&#((Z4 #V(Z8Z2)), (Z6Z7))V) =

= (Z2#((#(Z0,Z8)&Z2),Z3)&#((Z4 #V(Z8Z2)), (Z6Z7))V) =

= (Z2#((#(Z0,Z8)&Z2),Z3)&#(#(Z4, (Z8Z2))V, (Z6Z7))V)

= (Z2#( (#(Z0,Z8)&Z2),Z3)&#(#(Z4, (Z8Z2))V, (Z6Z7))V)

A572 = (Z2  #( ( #(Z0, Z8)&  Z2), Z3)&#( #(Z4, (Z8  Z2) )V, (Z6  Z7) )V)

ТЗО1.3: Таблица замены обозначений

Общие замены обозначений

Компоненты ШТА

Ai

Zi

=

(

)

#

&

V

Компоненты РТА:

alg Ai

Zi

:

begin

end

;

par

and

or

Специальные замены обозначений (для специальных пар знаков)

Компоненты ШТА

#(

)&

)V

Компоненты РТА:

АлгПТ: Алгол-подобный текст

ПасПТ: Паскаль-подобный текст

par begin

parbegin

cobegin

end and

parend_and

coend_and

end or

parend_or

coend_or

РТА 1.3: Рабочий текст алгоритма // замены обозначений

Исходная форма – строго соответственно шаблону

АлгПТ: Алгол-подобный текст

alg A572: begin Z2; parbegin begin parbegin Z0, Z8 parend_and; Z2 end, Z3 parend_and; parbegin parbegin Z4, begin Z8; Z2 end parend_or, begin Z6; Z7 end parend_or end

ПасПТ: Паскаль-подобный текст

alg A572: begin Z2; cobegin begin cobegin Z0, Z8 coend_and; Z2 end, Z3 coend_and; cobegin cobegin Z4, begin Z8; Z2 end coend_or, begin Z6; Z7 end coend_or end

Допустимые сокращения – в ориентации на классические аналоги:

АлгПТ: Алгол-подобный текст // parend_and = parend

alg A572 begin Z2; parbegin begin parbegin Z0, Z8 parend; Z2 end, Z3 parend; parbegin parbegin Z4, begin Z8; Z2 end parend_or, begin Z6; Z7 end parend_or end

ПасПТ: Паскаль-подобный текст //coend_and=coend

alg A572 begin Z2; cobegin begin cobegin Z0, Z8 coend; Z2 end, Z3 coend; cobegin cobegin Z4, begin Z8; Z2 end coend_or, begin Z6; Z7 end coend_or end

          1. Ви: Вертикальное исполнение

АлгПТ: Алгол-подобный текст / ПасПТ: Паскаль-подобный текст

A572 = (Z2  #( ( #(Z0, Z8)&  Z2), Z3)&#( #(Z4, (Z8  Z2) )V, (Z6  Z7) )V)

ВТА1.9: Вербальный текст алгоритма

ШТА: Шаблон текста алгоритма

РТА: Рабочий текст

1

2

3

4

5

A572 =

(

Z2 

#

(

(

#

(

Z0

,

Z8

)

&

 Z2

)

,

Z3

)

&

#

(

#

(

Z4

,

(

Z8  Z2

)

)

V

,

(

Z6  Z7

)

)

V

)

A572 =

(

Z2 

#(

(

#(

Z0,

Z8

)& 

Z2

),

Z3

)& 

#(

#(

Z4,

(

Z8 

Z2

)

)V,

(

Z6 

Z7

)

)V

)

A572 =

(

| Z2 

| #(

| | (

| | | #(

| | | | Z0,

| | | | Z8

| | | )& 

| | | Z2

| | ),

| | Z3

| )& 

| #(

| | #(

| | | Z4,

| | | (

| | | | Z8 

| | | | Z2

| | | )

| | )V,

| | (

| | | Z6 

| | | Z7

| | )

| )V

)

alg A142:

begin

Z2;

parbegin // cobegin

begin

parbegin // cobegin

Z0,

Z8

parend; // coend

Z2;

end,

Z3

parend; // coend

parbegin // cobegin

parbegin // cobegin

Z4,

begin

Z8;

Z2

end

parend_or, // coend_or

begin

Z6;

Z7

end

parend_or // coend_or

end

ВТА 1.10: Вербальный текст алгоритма // Дополнение к ВТА 1.9

Подстановка функций команд (операторы присваивания)

РТА: Рабочий текст алгоритма

6

7

alg A572: ya572 = Fa572(xa572):

begin

Z2: yz2 := Fz2(xz2);

parbegin // cobegin

begin

parbegin // cobegin

Z0: yz0 := Fz0(xz0),

Z8: yz8 := Fz8(xz8)

parend; // coend

Z2: yz2 := Fz2(xz2);

end,

Z3: yz3 := Fz3(xz3)

parend; // coend

parbegin // cobegin

parbegin // cobegin

Z4: yz4 := Fz4(xz4),

begin

Z8: yz8 := Fz8(xz8);

Z2: yz2 := Fz2(xz2)

end

parend_or, // coend_or

begin

Z6: yz6 := Fz6(xz6);

Z7: yz7 := Fz7(xz7)

end

parend_or // coend_or

end

alg A572: ya572 = Fa572(xa572)

begin

yz2 := Fz2(xz2);

parbegin // cobegin

begin

parbegin // cobegin

yz0 := Fz0(xz0),

yz8 := Fz8(xz8)

parend; // coend

yz2 := Fz2(xz2);

end,

yz3 := Fz3(xz3)

parend; // coend

parbegin // cobegin

parbegin // cobegin

yz4 := Fz4(xz4),

begin

yz8 := Fz8(xz8);

yz2 := Fz2(xz2)

end

parend_or, // coend_or

begin

yz6 := Fz6(xz6);

yz7 := Fz7(xz7)

end

parend_or // coend_or

end

Соседние файлы в папке Расчетно-графическая работа1