КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
II. Программирование и структурирование блок-схем
Следующие блок-схемы с одним входом (H – начало) и одним выходом (K – конец), объявляются для данного раздела базисными: Символы S, S 1,... (называемые в дальнейшем операторами) служат для обозначения функциональных блоков , каждый из которых представляет некоторую последовательность действий (или вычислений) с одним входом и одним выходом. Символ В обозначает некоторое (логическое) условие, которое может как выполняться (+), так и не выполняться (–). Разветвление интерпретируется следующим образом: если условие В выполняется, то происходит переход на левую ветку, в противном случае – на правую. Стрелки (®) определяют последовательность выполнения операторов. Таким образом, каждая из блок-схем (1) – (5) однозначно определяет порядок выполнения операторов S, S 1,... в зависимости от выполнения того или иного условия B. Введем специальный язык для линейной записи блок-схем. Запись блок-схемы на таком языке будет называться программой. Для записи блок-схем (1) – (5) используются следующие конструкции (назовем их базисными операторами):
Определение. Структурной блок-схемой называется любая из базисных блок-схем, а также любая блок-схема, которая может быть получена из структурной блок-схемы заменой некоторых из составляющих ее функциональных блоков на структурные блок-схемы. (Таким образом, программа структурной блок-схемы – это оператор вида (1) – (5), составные части S, S 1,... которого являются операторами того же вида.) Одно ограничение. Если S – оператор вида (2), то вместо (3) будем писать
Если такого ограничения не вводить, то существенно разным блок-схемам (6) и (7):
соответствовала бы одна и та же программа if B1 then if B2 then S1 else S2. Для записи неструктурных блок-схем введём дополнительное средство – оператор goto L (переход по стрелке), где L – метка, отмечающая оператор, на который осуществляется переход. Например, блок-схемы, изображенные на рис. 1, могут быть записаны как 1: S1; if B then begin S2; goto 1 end и if B1 then goto 2 else goto 3; 2: S; 3: if B2 then goto 2. Известно, что любая блок-схема с одним входом и одним выходом без зацикливаний и недостижимых операторов может быть структурирована, т.е. приведена к "эквивалентной" структурной форме, если согласиться на дублирование операторов и введение в блок-схему некоторых дополнительных операторов, вычисляющих "флажки". Например, блок-схемы на рис. 1 могут быть структурированы, как показано на рис. 2. 1. (Написание программ.) Написать программы по заданным блок-схемам (8) – 24) на стр. 10 и 11, используя: а) составные и условные операторы (схемы (8) – (15)); б) базисные операторы, т.е. составные, условные и цикла (схемы (16) – (21)); в) составные, условные операторы и операторы перехода (схемы (22) – (24)). 2. (Структурирование блок-схем.) Блок-схемы (25) – (30) на стр. 12 преобразовать в их структурные эквиваленты. 3. (Структурирование и программирование.) Написать программы для блок-схем (31) – (42) на стр. 12 – 13. Блок-схемы предварительно преобразовать в структурные. 4. (Блок-схемы программ.) Составить блок-схемы для заданных фрагментов программ:
5. (Структурирование программ.) Составить блок-схемы для заданных фрагментов программ. Полученные блок-схемы преобразовать в структурные и заново запрограммировать:
6. (Ограниченные инструментальные средства.) Показать, что любой из трех базисных операторов (2), (4) или (5) может быть выражен через два остальных, если дополнительно разрешено использовать составной оператор (1) и операторы присваивания следующего вида: x:=true и x:=false (или x:=0 и x:=1).
Для каждого из заданий этого раздела требуется написать программу вычисления некоторой величины по заданной формуле. Программу необходимо соответствующим образом оформить: предусмотреть определение констант и описание переменных; исходные данные определить вводом; результаты напечатать.
Дата добавления: 2014-11-29; Просмотров: 1251; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |