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

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

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





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; просмотров: 321. Нарушение авторских прав; Мы поможем в написании вашей работы!




Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...


Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...


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


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

Сравнительно-исторический метод в языкознании сравнительно-исторический метод в языкознании является одним из основных и представляет собой совокупность приёмов...

Концептуальные модели труда учителя В отечественной литературе существует несколько подходов к пониманию профессиональной деятельности учителя, которые, дополняя друг друга, расширяют психологическое представление об эффективности профессионального труда учителя...

Конституционно-правовые нормы, их особенности и виды Характеристика отрасли права немыслима без уяснения особенностей составляющих ее норм...

Метод архитекторов Этот метод является наиболее часто используемым и может применяться в трех модификациях: способ с двумя точками схода, способ с одной точкой схода, способ вертикальной плоскости и опущенного плана...

Примеры задач для самостоятельного решения. 1.Спрос и предложение на обеды в студенческой столовой описываются уравнениями: QD = 2400 – 100P; QS = 1000 + 250P   1.Спрос и предложение на обеды в студенческой столовой описываются уравнениями: QD = 2400 – 100P; QS = 1000 + 250P...

Дизартрии у детей Выделение клинических форм дизартрии у детей является в большой степени условным, так как у них крайне редко бывают локальные поражения мозга, с которыми связаны четко определенные синдромы двигательных нарушений...

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