Студопедия — Правила записи и выполнения
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Правила записи и выполнения






1. Метка m выбирается произвольно в ряду других меток программы.

2. Оператор, помеченный меткой m в соответствии с требованиями алгоритма, может располагаться как выше, так и ниже оператора if.

3. При выполнении проверяемого условия (результат – ИСТИНА), управление передаётся оператору goto, который в свою очередь передаёт управление оператору, помеченному меткой m, нарушая естественный порядок следования операторов.

4. Если результат проверки есть ЛОЖЬ, сохраняется естественный порядок следования операторов, т.е. управление передаётся оператору, записанному непосредственно под if.

Схема выполнения:

ЛОЖЬ ИСТИНА

 

if(Р) goto m;

ветвь_НЕТ

m:...

В качестве ветви НЕТ может использоваться один (простой, составной) или несколько операторов. Например,

... if(.9>=c) goto M4; y2=15; M4: z=10.; ... ... if(.9>=c) goto M4; y2=15; n=2; M4: z=10.; ... ... if(.9>=c) goto M4; { y2=15; n=2; } M4: z=10.; ...

В каждом из фрагментов невыполнение проверяемого условия.9>=c (например, при c=1.6) приводит к выполнению ветви «НЕТ», т.е. операторов, записанных непосредственно под if до помеченного меткой М4, а затем и его тоже. Выполнение условия (например, при c=0.4) приводит к реализации оператора goto M4;, который (минуя операторы ветви «НЕТ») передаёт управление оператору с меткой М4.

В принципе, возможна реализация условно-линейного варианта полного ветвления (ветвь «НЕТ», затем ветвь «ДА») с использованием укороченного if и двух goto.

Структура имеет вид:

if(Р) goto m1;

ветвь_НЕТ

goto m2;

m1: ветвь_ДА

m2:

В качестве ветвей НЕТ (ДА) может использоваться один (простой, составной) или несколько операторов. Например,

... if(8!= b) goto m1; y=sin(15.); goto m2; m1:y=log(120.5); m2:printf(“\ny=%.2f”, y); ... ... if(8!= b) goto m1; y=sin(15.); n=2; goto m2; m1:y=log(120.5); n=1; m2:printf(“\ny=%.2f”, y); if(8!= b) goto m1; { y=sin(15.); n=2; } goto m2; m1:{ y=log(120.5); n=1; } m2:printf(“\ny=%.2f”, y);

В каждом из фрагментов выполнение проверяемого условия (8!= b), например, при b=6 приводит к реализации оператора goto m1;, который (минуя операторы ветви «НЕТ») передаёт управление оператору (операторам) с его меткой m1. Выполняется ветвь «ДА», после чего сохраняется естественный порядок реализации операторов (вывод результатов). Невыполнение проверяемого условия (8!= b), например, при b=8 приводит к выполнению ветви «НЕТ», т.е. операторов, записанных непосредственно под if, включая goto m2; который в свою очередь передаёт управление (минуя операторы ветви «ДА») на вывод результатов (выход из ветвления).

Внимание! Использование укороченного оператора условной передачи управления со структурой if(Р) goto m допускается, но не поощряется правилами программирования, т.к. создаёт сложную структуру ветвления с использованием двух меток.







Дата добавления: 2015-10-02; просмотров: 305. Нарушение авторских прав; Мы поможем в написании вашей работы!



Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

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

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Влияние первой русской революции 1905-1907 гг. на Казахстан. Революция в России (1905-1907 гг.), дала первый толчок политическому пробуждению трудящихся Казахстана, развитию национально-освободительного рабочего движения против гнета. В Казахстане, находившемся далеко от политических центров Российской империи...

Виды сухожильных швов После выделения культи сухожилия и эвакуации гематомы приступают к восстановлению целостности сухожилия...

КОНСТРУКЦИЯ КОЛЕСНОЙ ПАРЫ ВАГОНА Тип колёсной пары определяется типом оси и диаметром колес. Согласно ГОСТ 4835-2006* устанавливаются типы колесных пар для грузовых вагонов с осями РУ1Ш и РВ2Ш и колесами диаметром по кругу катания 957 мм. Номинальный диаметр колеса – 950 мм...

Сосудистый шов (ручной Карреля, механический шов). Операции при ранениях крупных сосудов 1912 г., Каррель – впервые предложил методику сосудистого шва. Сосудистый шов применяется для восстановления магистрального кровотока при лечении...

Трамадол (Маброн, Плазадол, Трамал, Трамалин) Групповая принадлежность · Наркотический анальгетик со смешанным механизмом действия, агонист опиоидных рецепторов...

Мелоксикам (Мовалис) Групповая принадлежность · Нестероидное противовоспалительное средство, преимущественно селективный обратимый ингибитор циклооксигеназы (ЦОГ-2)...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия