36580

Композиция условий и операторов. Оператор условного перехода

Контрольная

Информатика, кибернетика и программирование

Оператор условного перехода. Композиция условий и операторов. Простые операторы несмотря на свою важность недостаточны для того чтобы представлять любые алгоритмы задач.

Русский

2013-09-22

32.5 KB

1 чел.

Композиция условий и операторов. Оператор условного перехода.

1. Композиция условий и операторов.

Простые операторы, несмотря на свою важность, недостаточны для того, чтобы представлять любые алгоритмы задач. Их использование подобно прямолинейному движению автомобиля на трассе. Очевидно, что вы не сможете далеко уехать, если не будете реагировать на светофоры и другие сигнальные знаки, в том числе указывающие на возможные разветвления на трассе. Аналогично обстоит дело и в программировании: прежде чем выполнять соответствующие действия бывает совершенно необходимо проанализировать (и учесть) те или иные условия, представляемые в Паскале как выражения типа Boolean.

Особое значение приобретают сложные операторы, представляющие композиции условий и операторов (простых или сложных). В Паскале имеются две группы таких композиций (операторы с условиями):

операторы условного перехода (if-then-else и if-then) и

операторы итерационных циклов (while- do и repeat-until).

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

2. Операторы условного перехода.

Операторы условного перехода имеют следующую синтаксическую структуру:

if <условие> then <оператор 1> else <оператор 2>;

if <условие> then <оператор >;

Оператор if-then-else выполняется следующим образом: вначале вычисляется значение условия (проверяется условие). Если это значение true - выполняется оператор1, а если значение условия равно false - выполняется оператор2. В качестве оператора1 или оператора2 может быть любой оператор Паскаля (простой или сложный), однако это должен быть один оператор. Если по логике алгоритма необходимо выполнить последовательность из нескольких операторов вместо оператора1 или оператора2, то должен быть использован составной оператор, образуемый заключением последовательности операторов в операторные скобки begin end. Скобки begin end превращают любую последовательность операторов в один оператор.

Оператор if-then является сокращенной формой условного оператора, рассчитанного на тот случай, когда в ветви else используется пустой оператор.

Пустой оператор является одним из простых операторов: он не производит никаких действий и обозначается точкой с запятой (;).

Замечание После оператора ветви then (перед ключевым словом else) не должна стоять точка с запятой, т.к. она будет восприниматься как дополнительный (пустой) оператор, что нарушит синтаксическую структуру оператора if-then-else!

В качестве оператора1 или оператора2 в if-then-else может быть использован другой оператор if-then-else. Это - случай вложенных операторов if-then-else. Вложенные операторы if-then-else существенно усложняют читаемость программы, они могут также приводить к неоднозначности их чтения, поэтому следует по возможности избегать использования вложенных операторов if-then-else. Во многих случаях они могут быть заменены оператором выбора из нескольких альтернатив, который мы рассмотрим позднее.

Помимо операторов условного перехода в Паскале имеется также оператор безусловного перехода, имеющий синтаксическую структуру goto <метка>.

Оператор goto относится к числу нежелательных для использования операторов, т.к. способен серьёзно усложнить структуру программы, сделав её подобной "блюду спагетти". По этой причине мы не останавливаемся подробнее на этом операторе. Практически во всех случаях можно избежать использования goto , получая хорошо структурированные программы. Исключение составляет только безусловные переходы, для которых в Турбо Паскале предусмотрены специальные формы:

переход к концу программы - halt;

выход из процедуры или функции - exit;

выход из цикла - break;

переход к началу цикла - continue.

Задача 4.2.6(18)

program Project18;

type mas=array[1..4,1..5] of Integer;

mass=array[1..5] of real;

var a:mas;

b:mass;

i,j:Integer;

procedure p(x:mas; e:Integer; var y:real);

var i,min,max:Integer;

begin

min:=x[1,e];

max:=x[1,e];

for i:=2 to 4 do

begin

if x[i,e]<min then

min:=x[i,e];

if x[i,e]>max then

max:=x[i,e];

end;

y:=(min+max)/2;

end;

begin

for i:=1 to 4 do

for j:=1 to 5 do

read(a[i,j]);

for i:=1 to 5 do

begin

p(a,i,b[i]);

write(b[i]:5:2,' ');

end;

 Readln;

Readln;

end.


 

А также другие работы, которые могут Вас заинтересовать

65721. УДОСКОНАЛЕННЯ МЕТОДІВ ПРОГНОЗУВАННЯ ПОТРЕБИ В ЗАПАСНИХ ЧАСТИНАХ ДО СИЛОВИХ АГРЕГАТІВ ВАНТАЖНИХ АВТОМОБІЛІВ 364.5 KB
  Ця проблема вимагає рішення таких задач: планування потреби в запасних частинах; формування плану виробництва запасних частин; організація системи постачання; управління запасними частинами й організація складського господарства.
65722. Політична символіка як засіб демократичної консолідації суспільства 156.5 KB
  Трансформація політичної системи супроводжується пошуком консолідуючих смислових значень поведінки людини в суспільстві. Смислові значення що консолідують суспільство містяться у символах які функціонують в політиці у вигляді політичної символіки.
65723. ВПЛИВ ДИНАМІЧНИХ ДІЙ НА МІЦНІСТЬ І КОМФОРТНІСТЬ БУДІВЕЛЬ, ЩО ЕКСПЛУАТУЮТЬСЯ У СКЛАДНИХ ІНЖЕНЕРНО-ГЕОЛОГІЧНИХ УМОВАХ 2.08 MB
  Проблема коректного моделювання динамічних дій в розрахункових моделях будівель і споруд завжди виникає при їх проектуванні, будівництві, експлуатації, реконструкції та підсиленні. Головне завдання проектувальника – як можна точніше врахувати і оцінити всі навантаження та дії...
65724. УДОСКОНАЛЕННЯ ЛОГІСТИЧНОГО СЕРВІСУ В ПРОЕКТАХ ПЕРЕВЕЗЕНЬ ВАНТАЖІВ 522.5 KB
  Задачі вдосконалення логістичного сервісу в проектах перевезень вантажів Інтеграція Інформатизація Вибір та оптимізація індивідуального обладнання необхідного для оптимального функціонування підприємств які надають логістичні послуги Розроблення єдиного...
65725. Отоліти та зуби костистих риб палеогену України 538 KB
  Костисті риби переважають у складі кайнозойської іхтіофауни. Окрім скелетних решток самостійним обєктом дослідження є розрізнені отоліти та зуби костистих риб. Костисті риби з палеогенових відкладів України були вивчені в основному за повноскелетними рештками.
65726. Цілеспрямована стимуляція перебудови полів дефектів структури кристалів CdZnTe і ZnSe:Te 501.5 KB
  Однак при сучасній цифровій обробці частина інформації віртуальна тому при комплексному дослідженні впливу перебудови полів дефектів структури на кінетичні фотоелектричні та фотодіелектричні характеристики кристалів необхідно використовувати взаємоузгодженні алгоритми і програми.
65727. ПОВЕРХНЕВI ТА ТУНЕЛЬНI ЕФЕКТИ В МЕТАЛЕВИХ НАНОСТРУКТУРАХ 820 KB
  Розвинути теорiю одноелектронного тунельного транспорту в кластерних структурах з урахуванням нагрiву електронної пiдсистеми кластерiв і уширення енергетичних рiвнiв. Для досягнення поставленої мети необхiдно було вирiшити наступнi задачi: розвинути метод функцiонала густини для...
65728. ЗАЛЕЖНІСТЬ ФІЗИЧНИХ ВЛАСТИВОСТЕЙ НУКЛЕОТИДІВ І ПРОМОТОРІВ ВІД ЇХНІХ ФУНКЦІОНАЛЬНИХ І ЕВОЛЮЦІЙНИХ ХАРАКТЕРИСТИК 722 KB
  Саме виявлення та дослідження взаємозвязків між фізичними властивостями промоторів та їхньою біологічною активністю проводиться в дисертаційній роботі. Знання перелічених закономірностей і залежностей дає змогу зрозуміти енергетичні характеристики генетичного коду...
65729. Релігійне виховання в закладах загальної середньої освіти ФРН: 1945-2005 роки 166.5 KB
  У контексті європейського партнерства одним зі стратегічних завдань української освіти стало виховання високоморальних громадян які могли б налагоджувати міжлюдські й міжнаціональні взаємовідносини сприяти суспільно-економічному та культурному розвитку нашої держави.