Green-sell.info

Новые технологии
8 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Условный оператор применяется для программирования

Операторы языка программирования

Оператор — это элемент языка, задающий полное описание действия, которое необходимо выполнить. Каждый оператор представляет собой законченную фразу языка программирования и определяет некоторый вполне законченный этап обработки данных. В состав операторов могут входить служебные слова, данные, выражения и другие операторы. В английском языке данное понятие обозначается словом “statement”, означающим также “предложение”.

Каждый оператор в любом языке программирования имеет определенный синтаксис и семантику. Под синтаксисом оператора понимается система правил (грамматика), определяющая его запись с помощью элементов алфавита данного языка, в который наряду с различными символами входят, например, и служебные слова. Под семантикой оператора понимают его смысл, т.е. те действия, которым соответствует запись того или иного оператора. Например, запись i := i + 1 является примером синтаксически корректной записи оператора присваивания в языке Pascal, семантика которого в данном случае такова: извлечь значение ячейки памяти, соответствующей переменной i, сложить его с единицей, результат записать в ту же ячейку памяти.

В большинстве процедурных языков программирования набор операторов практически одинаков и состоит из оператора присваивания, операторов выбора, операторов цикла, оператора вызова процедуры, операторов перехода. Иногда выделяют также пустой (отсутствие действия) и составной операторы. Многие операторы являются способом представления определенных алгоритмических конструкций (см. “Алгоритмические конструкции) в языке программирования. Рассмотрим группы операторов подробнее, используя синтаксис языка Pascal.

Оператор присваивания

Присваивание — это действие компьютера, в результате которого переменная получает значение вычисленного выражения (оно помещается в соответствующую переменной ячейку памяти). Для описания такого действия в языках программирования существует оператор присваивания.

В общем виде оператор присваивания записывается так:

Например, в языке Pascal в качестве знака присваивания используется комбинация символов :=. В ряде других языков — знак равенства.

Результатом выполнения оператора присваивания является изменение состояния данных: все переменные, отличные от переменной, стоящей в левой части оператора присваивания, не меняют своего значения, а указанная переменная получает значение выражения, стоящего в правой части оператора присваивания. В большинстве случаев требуется, чтобы тип выражения совпадал с типом переменной. Если это не так, то оператор либо считается синтаксически некорректным, либо производится преобразование типа выражения к типу переменной (см. “Типы данных).

Операторы выбора

По-другому эти операторы называют условными операторами. Условные операторы используются для программирования алгоритмов, содержащих алгоритмическую конструкцию ветвление.

В языках программирования имеется несколько видов условных операторов. Полный условный оператор соответствует алгоритмической структуре полного ветвления:

В языке программирования соответствующий условный оператор имеет вид:

if B then S1 else S2

Если выражение B, которое вычисляется в начале выполнения условного оператора, имеет значение “истина”, то будет выполняться оператор S1, в противном случае — оператор S2. Операторы S1 и S2 могут быть составными.

Алгоритмическая структура неполного ветвления реализуется с помощью неполного условного оператора, который имеет вид:

Здесь B — логическое выражение, а S — произвольный оператор. Оператор S будет выполняться, если выражение B окажется истинным.

Если условный оператор реализует всего две ветви выбора (“да” и “нет”), то с помощью оператора варианта (case-оператора) можно запрограммировать многоветвящуюся структуру. Оператор варианта имеет вид:

Выполняется данный оператор так: значение выражения E ищется среди перечисленных в записи оператора значений V1, V2, …, Vn, и если такое значение находится, то выполняется соответствующий оператор S1, S2, …, Sn.

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

Пример 1. В статье “Алгоритмические конструкции” 2 был приведен пример записи алгоритма решения обобщенного квадратного уравнения с помощью конструкций ветвления. Приведем фрагмент программы на языке Pascal, реализующий этот же алгоритм:

if c = 0 then writeln(‘x — любое’)

else writeln(‘нет корней’)

if D 0 do begin

В цикле с постусловием тело цикла предшествует условию В. В отличие от цикла с предусловием здесь В — это условие окончания цикла. Оператор цикла с постусловием в Паскале имеет вид:

repeat S until B

При такой организации цикла тело цикла S хотя бы один раз обязательно выполнится.

Практически во всех процедурных языках существует оператор цикла c параметром. Схематично его можно представить так:

for E1 to E2 step E3 do S

Здесь значение переменной (параметра цикла) меняется от значения выражения E1 до E2 с шагом E3. Для каждого такого значения параметра цикла выполняется оператор S. В языке Pascal понятие шага в описании этого оператора отсутствует, а сам шаг для целочисленного параметра цикла может быть равен либо 1, либо –1. Оператор “цикл с параметром” используется для программирования циклов с заданным числом повторений. Для программирования итерационных циклов (число повторений которых заранее неизвестно) он не годится.

Оператор вызова процедуры

В статье “Подпрограммы” подробно рассказывается о таком виде подпрограмм, как процедуры. Стандартные подпрограммы языка программирования, которые входят в одну из библиотек подпрограмм, а также пользовательские подпрограммы, описанные внутри данного блока, вызываются с помощью оператора вызова процедуры:

Здесь E1,E2,…,En — переменные или выражения, представляющие собой фактические параметры обращения к процедуре. Наиболее часто используемыми стандартными процедурами являются процедуры ввода и вывода данных (read и write в Pascal).

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

Пример 3. Пусть у нас описана процедура abc:

procedure abc(a,b:integer;var c: integer);

Вызов этой процедуры abc(2,3,x) эквивалентен блоку действий:

Операторы перехода

Наиболее известным в данной группе операторов является оператор безусловного перехода goto. Если ко всем или некоторым уже имеющимся операторам программы добавить метки, то в программе становится возможным использовать оператор перехода вида:

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

Пример 4. Пусть нам требуется определить, есть ли в двухмерном массиве a элемент, равный 0:

if a[i,j] = 0 then begin

1: if b then write(‘есть’) else write(‘нет’);

Программа, разработанная по правилам структурного программирования, не должна содержать операторов безусловного перехода. Приведенную выше программу без использования оператора goto можно переписать следующим образом:

then writeln(‘Мне ‘,k,’ года’)

else writeln(‘Мне ‘,k,’ лет’)

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

Читать еще:  В состав интегрированной системы программирования входят

Оператор вызова процедуры только на первый взгляд является простым. Здесь важно объяснить правила передачи параметров в процедуры и функции, различие между параметрами-переменными и параметрами-значениями (в последнем случае мы можем передавать не только имя переменной, но и константу или даже выражение соответствующего типа). Формальные и фактические параметры должны соответствовать по типам, но не по именам, что является далеко не очевидным для учеников.

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

Урок 6. Условный оператор if

Урок из серии: «Язык программирования Паскаль»

Один из важнейших операторов Паскаля – условный оператор. Он позволяет изменять порядок выполнения операторов в зависимости от некоторого условия, представляющего собой логическое выражение типа Boolean. Если значение равно True, то выполняется одна группа операторов, если False, то другая группа операторов или не выполняется ничего.

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

На этом уроке рассмотрим оператор If.

Условный оператор If (оператор ветвления)

Полная формы условного оператора называется If-then-else, имеет вид:

Если в качестве оператора должна выполняться серия операторов, то они объединяются в операторные скобки Begin-End.

Слова if (если) и Then (то) – зарезервированные.

Замечание. Перед ключевым словом else (иначе) точка с запятой не ставится, она ставиться после всего оператора If.

Условие представляют собой логические выражение. Простые условия записываются в виде равенств или неравенств. В сложных условиях несколько простых условий объединяются с помощью логических операций or, and. В этом случае простые условия заключаются в круглые скобки.

На рисунке показана блок-схема полной формы оператора.

Алгоритм выполнения полного условного оператора:

  1. Проверяется значение логического выражения, записанного в условии после слова If
  2. Если условие истинно (значение выражения условие равно True), то выполняется оператор 1, указанный после слова Then
  3. Если условие ложно, то выполняется оператор 2, записанный после слова Else.

Неполная форма условного оператора называется if-then, имеет вид:

Если в качестве оператора должна выполняться серия операторов, то они объединяются в операторные скобки Begin-End.

В неполном ветвлении ветвь Else отсутствует.
На рисунке показана блок схема оператора if-then.

Алгоритм выполнения неполного условного оператора

  1. Проверяется значение логического выражения, записанного в условии после слова If
  2. Если условие истинно (значение выражения условие равно True), то выполняется операторы, указанный после слова Then
  3. Если условие ложно, то ничего делать не надо. Происходит переход к следующему оператору.

Операторы ветвления могут быть вложенными, т.е. один оператор if можно расположить внутри другого. В этом случае он позволяет производить выбор более чем из двух вариантов. При написании исходного кода с вложенными операторами для удобочитаемости кода вложенные операторы выделяются отступами.

Применение условного оператора if рассмотрим на примерах.

Пример 1. С клавиатуры ввести два различных числа. Найти большее из них и вывести его на экран.

В этом примере нужно произвести выбор одного из двух вариантов, для этого используется оператор ifthenelse.

Пример 2. Даны три отрезка. Можно ли из них построить треугольник?

Решение. Для любого треугольника сумма его двух сторон должна быть больше третьей стороны (неравенство треугольника). Если a, b, c – стороны предполагаемого треугольника, то нужно сравнить длину каждого отрезка с суммой двух других. Если хотя бы в одном случае отрезок окажется больше суммы двух других, то треугольник из таких отрезков не построить.

Для решения этой задачи используется оператор ifthenelse со сложным условием.

Задачи для самостоятельного выполнения

  1. Найти наибольшее из трех данных чисел.
  2. Запишите условный оператор, в котором значение переменной вычисляется по формуле: a + b, если a — нечетное и a*b, если a — четное.
  3. Вывести на экран номер четверти, которой принадлежит точка с координатами (x, y), при условии, что x и y отличны от 0.
  4. После выполнения операторов
    a := 0;
    If a<>0 Then; a := 2
    значение переменной равно двум. Объясните почему.
  5. Если целое число M делится нацело на целое число N, то вывести на экран частное от деления, в противном случае — сообщение »M на N нацело не делится».

На этом уроке рассказывалось об условном операторе if и его применении при решении задач. Простой оператор ветвления используется для для выбора одного из двух возможных продолжений алгоритма, для выбора более чем из двух продолжений можно использовать вложенный оператор ветвления.

Проверь себя!

Видеоурок на тему «Условный оператор» от проекта INFOUROK.RU (Игорь Жаборовский).

Понравился видеоурок? Еще 25 видеоуроков Игоря Жаборовского вас ждут здесь!

Условный оператор применяется для программирования

В Паскале разветвляющиеся алгоритмы позволяет реализовать условный оператор. Условный оператор позволяет проверить некоторое логическое выражение и в зависимости от результатов проверки выполнить то или иное действие.
Структура условного оператора в полной форме имеет следующий вид:

IF (логическое выражение) THEN (оператор1) ELSE (оператор2);

Вначале вычисляется значение логического выражения, если результат — TRUE (истина), то выполняется оператор1, если результат есть FALSE (ложь), наоборот, выполняется оператор2.

Блок-схема условного оператора в полной форме:

Перед служебным словом Else символ «;» не ставится.

Структура условного оператора в неполной форме имеет следующий вид:

IF (условие) THEN (оператор);

Вычисляется значение логического выражения, если оно имеет значение true , то выполняется оператор, записанный после then , если же значение ложно ( false ), то выполнение условного оператора завершается.

Пример:
if ( x >-5) and ( x b) then c:=a else c:=b // проверка наибольшего
write (‘Наибольшее число=’, c) //вывод с
readln
end .

1. Даны 3 числа a, b, c. Если a кратно b, то найти сумму всех чисел, если не кратно, то произведение.
2. Даны 3 числа a, b, c, вывести их в порядке возрастания.
3. Даны 3 действительных числа, увеличить на 10 те из них, которые неотрицательны.
4. Даны 5 чисел, найти сумму четных.
5. Даны 2 числа. Если их произведение отрицательно, умножить его на –2 и вывести, в противном случае увеличить его в 1,5 раза и вывести.
6. Даны два числа, вычесть из большего меньшее.
7. Даны три действительных числа. Возвести в квадрат те из них, значе­ния которых неотрицательны.
8. Даны три числа a, b, c. Найти максимальное среди чисел.
9. Даны три числа a, b, c. Найти минимальное среди чисел.
10. Найти решение квадратного уравнения -7x 2 +6x+5=0.
11. Найти решение квадратного уравнения 2x 2 +12x+4=0.
12. Даны x , у. Если x и у отрицательны, то каждое значение заменить его модулем; если отрицательно только одно из них, то оба значения увеличить на 0,5; если оба значения неотрицательны, то оба значения увеличить в 10 раз.
1 3. Определить лежит ли точка с указанными координатами X, Y на окружности радиуса R с центром в начале координат.
14. Выяснить, находится ли точка Н( x , у) в кругу радиуса r с центром в точке с координатами а, b .
15. Определить пройдет ли график функции y=5x 2 -7x+2 через заданную точку с координатами (а,b).
16. Даны три числа a, b, c. Определить принадлежат ли они отрезку [d, f].
1 7. Два прямоугольника заданы длинами сторон. Определить, можно ли первый прямоугольник целиком разместить во втором.
1 8. Определить, пройдет ли кирпич с рёбрами a, b, c в прямоугольное отверстие со сторонами x и y. Просовывать кирпич в отверстие разрешается только так, чтобы каждое из его рёбер было параллельно или перпендикулярно каждой из сторон отверстия.
19. Напряжение более 36 вольт считается опасным. По участку цепи сопротивлением R протекает ток I. Составить программу и блок-схему, которая выводит сообщение «Опасно», если напряжение превышает допустимое, в противном случае «Не опасно». (U=I*R)
20. Даны стороны 2 треугольников: a, b, c и d, e, f. Проверить имеют ли эти треугольники равные площади.
21. Составить программу, которая спрашивает возраст человека и, если ему 18 лет и больше, сообщает “Замечательно. Вы уже можете водить автомобиль”, а в противном случае – “К сожалению, водить автомобиль Вам рановато”.
22. В школу танцев принимаются юноши и девушки, имеющие рост не ниже 168 см и не выше 178 см . Их вес должен соотноситься с ростом по формуле: ВЕС = x * x -2 и y В then С:=А+В else С:=А-В;

Читать еще:  Языки программирования классификация и история развития

а) 100 b) 5 с) 105 d)95

6. Укажите правильную запись на языке Паскаль выражения, записанного на русском языке Х>=0 и Х>=3,25 и У =0) AND (Х>=3.25) AND (У =0) AND (Х>=3.25) AND (У =0) AND (Х>=3,25) AND (У =0 AND Х>=3.25 AND У<= SIN (Х)

Условные операторы: (if), (?:)

Условный оператор ветвления (if) реализует выполнение определённых команд при условии, что некоторое логическое выражение (условие) принимает значение «истина» true . Тернарный оператор (?:) является альтернативным вариантом конструкции if…else , позволяющим сократить ваш код, фактически записывая условие в одну строчку.

Инструкция if

Условный оператор if (в переводе с англ. — «если») реализует выполнение определённых команд при условии, что некоторое логическое выражение (условие) принимает значение «истина» true .

Условие в этой конструкции может быть любым выражением. JavaScript автоматически преобразует результат выра­жения в логическое значение, вызывая для него функцию Boolean(). Если условие эквивалентно true , выполняется инструкция, в противном случае – нет.

Выполняемая инструкций может быть представлена одной строкой или блоком кода (группой строк в фигурных скобках), например:

Примечание: Рекомендуется всегда использовать фигурные скобки, даже если нужно вы­полнить всего одну строку кода. Это ясно показывает, что должно быть выполнено в каждом случае и улучшает читаемость кода.

Конструкция if. else

Следующий пример выведет соответствующее окно приветствия в зависимости от текущего времени в вашем браузере:

Инструкция else if

Инструкция else if используется в случае, если требуется выполнить один из многих фрагментов кода. Формально это не JavaScript-инструкция, а лишь распространенный стиль программирования, который заключается в применении повторяющихся инструкций if/else :

Приведенный выше код – это всего лишь последователь­ность инструкций if . Каждая следующая if является частью else предыдущей инструкции if . Запись else if более удобная, чем ее синтаксически эквивалентная форма, показывающая вложенность инструкций if :

В следующем примере, благодаря применению конструкции else if , будет выведено одно из четырех окон приветствия в зависимости от времени суток:

Тернарный оператор (?:)

Условный оператор (?:) – это единственный тернарный (от лат. ternarius — «тройной») оператор с тремя операндами в JavaScript. Тернарный оператор возвращает свой второй или третий операнд в зависимости от значения логического выражения, заданного первым операндом.

Первый операнд используется в качестве условия, он вычисляется и преобразуется, при необходимо, в булево значение. Если условие верно true , то вычисляется и возвращается значение1. Если условие неверно false , то вычисляется и возвращается значение2:

Читается этот код так: если а больше b, то c = a, иначе c = b.

Можно записать тоже самое через if/else:

Вложенные инструкции if/else, так же можно заменить последовательностью из тернарных операторов:

Условный оператор ?: имеет ассоциативность справа налево, поэтому следующие две инструкции эквивалентны:

В предыдущем примере оператор && снача­ла проверяет выполняется ли временное условие (чему равна переменная time). Если условие выполняется, то в переменную message будет записа­на соответствующая строка приветствия. В противном случае, в силу побочного эффекта, связанного с неполным вычислением, оператор && выведет false и т.д. Этот метод используется не очень часто, но если вам встретится нечто подобное, то вы теперь знаете, как работают подобные инструкции.

Задачи

Вам даны две переменные x и y, менять их не нужно. При помощи тернарного оператора сравните их и если x больше, чем y, то выведите фразу: «x больше, чем y», иначе выведите фразу: «x не больше, чем y».

Ответ: «x больше, чем y».

Четное или нечетное число

Пользователь вводит какое-то число (num). Используя конструкцию if..else, напишите код, который делает запрос: «Введите число».
Если посетитель вводит четное число, то выводить «»Число » + num + » четное»», если нечетное: «Число » + num + » нечетное».

Суть решения заключается в том, что проверяется остаток от деления числа на 2. Если остаток равен , значит число чётное, иначе – нечётное. Получить остаток от деления в можно с помощью оператора %.

Сколько цифр в числе и его знак

Напишите код, который предлагает пользователю ввести целое число. Нужно вывести на экран сколько в этом числе цифр, а также положительное оно или отрицательное. Например, «Число » + num + » однозначное положительное». Достаточно будет определить, является ли число однозначным, двухзначным или трехзначным и более.

Алгоритм решения задачи:

  1. Проверяем, не является ли число нулем. Ноль не является ни положительным, ни отрицательным.
  2. После этого проверяем количество знаков в в положительном числе и выводим на эран соответствующее сообщение.
  3. Проверяем количество знаков в отрицательном числе, выводим сообщение.

Принадлежность точки окружности

Даны координаты точки A(x = 4, y = 9) и радиус окружности (R = 10) с центром в начале координат. Используя тернарный оператор напишите код, который будет выводить сообщение о том, лежит ли данная точка внутри окружности или за её пределами. Для извлечения квадратного корня из числа z вам понадобится метод Math.sqrt(z) .

Следует рассмотреть прямоугольный треугольник, один катет которого лежит на любой оси, а другой является перпендикуляром к этой оси из заданной точки A. В этом случае длины катетов треугольника равны значениям x и y, а гипотенуза L является отрезком, соединяющим начало координат O с точкой A. Если этот отрезок L больше радиуса круга R, то значит точка лежит вне окружности.

Читать еще:  Паттерны программирования c

Длина гипотенузы находится по теореме Пифагора: L = Math.sqrt(x*x + y*y).

Определить существование треугольника по трем сторонам

У треугольника сумма любых двух сторон должна быть больше третьей. Иначе две стороны просто на третью и треугольника не получится.
Пользователь вводит поочерёдно через prompt длины трех сторон. Используя конструкцию if..else, напишите код, который должен определять, может ли существовать треугольник при таких длинах. Т. е. нужно сравнить суммы двух любых строн с оставшейся третьей стороной. Чтобы треугольник существовал, сумма всегда должна быть больше отдельной стороны.

Поскольку у треугольника три стороны, то можно составить три варианта сложения двух сторон: a + b, b + c, a + c. Первую сумму сравниваем с оставшейся стороной c, вторую — с a и третью — с b. Если хотя бы в одном случае сумма окажется не больше третьей стороны, то можно сделать вывод, что треугольник не существует.

Найти максимальное число из трех

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

Найти сумму или произведение цифр трехзначного числа

Пользователь вводит через prompt трёхзначное число. Проверить трехзначное число на четность и найти сумму его цифр, если число четное, или произведение его цифр, если число нечетное.

Чтобы извлечь первую цифру трехзначного числа, надо его разделить на 100 и округлить воспользовавшись побитовыми операторами.
Чтобы извлечь вторую цифру трехзначного числа, можно пойти разными способами. Например, найти остаток от деления на 100, потом разделить на 10 и снова округлить.
Последняя цифра любого числа, обозначающая единицы, извлекается путем нахождения остатка от деления на 10: n % 10.

Проверить число на четность. Найти остаток от деления числа на 2. Для этого использовать оператор %. Если результат равен нулю, значит число четное. Иначе – нечетное.

Принятие решений. Условные операторы в языке С

Теоретическая часть

В языке программирования С используются несколько конструкций для принятия решений :

  • оператор if;
  • оператор switch;
  • условный оператор ? ( оператор условия ) [4.1].

Для прерывания программного цикла при некотором условии применяется утверждение (оператор) break , для продолжения итераций цикла при выполнении некоторых условий применяется утверждение (оператор) continue , для выхода из функции при выполнении некоторых условий применяется оператор return , для перехода к заданному месту программы применяется оператор goto , хотя считается, что в программировании не существует ситуаций, в которых нельзя обойтись без оператора goto [2; 3] . Утверждение break применяется также в теле оператора switch .

4.1. Оператор if

Общая форма записи оператора if :

В операторе if используется результат вычисления условия, заключенного в круглые скобки, на основе которого принимается решение. Результат вычисления условия expression может быть арифметическим или логическим. Если результат выполнения условия expression будет истинным, то возможно выполнить несколько утверждений типа program statement . Для этого следует использовать фигурные скобки, например:

4.2. Конструкция if–else

Общая форма записи конструкции if–else :

Если выполняется условие expression , то будет выполняться фрагмент программы program1 statement1 , в противном случае будет выполняться program2 statement2 .

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

4.3. Конструкция if–else if–else if–. –else

Форма записи конструкции if–else if–else if–. –else :

Приведенная конструкция используется для выбора возможных ситуаций, когда проверяются условия expression1 , expression2 , expression1 . . Соответственно будут выполняться действия program1 statement1 , program2 statement2 , program3 statement3 и т.д. В случае, когда ни одно из условий не выполняется, выполняются действия, прописанные после оператора else .

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

4.4. Оператор switch

Общая форма записи оператора switch :

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

Утверждение break сигнализирует об окончании выполнения утверждений и приводит к выходу из оператора switch . Утверждение break ставится в конце каждого варианта выбора. Если этого не сделать, то выполнение последовательности утверждений перейдет в следующий вариант выбора и будет выполняться до тех пор, пока не встретится утверждение break [4.1].

Специальный дополнительный вариант default будет выполнен в том случае, когда не будет найдено ни одного совпадения.

Операторы if и switch той или иной синтаксической конструкции существуют практически во всех языках программирования (в первую очередь языках высокого уровня), и их часто называют операторами ветвления.

4.5. Условный оператор ?

В отличие от других операторов языка С, которые могут быть унарными или бинарными, специфический оператор условия является тернарным оператором. Это означает, что у него может быть три операнда [4.1].

Общий формат записи оператора условия :

Если в результате вычисления условия будет получено значение TRUE (истина, не нуль), то выполняется выражение_1 , и результатом выполнения оператора условия будет значение, полученное при вычислении этого выражения. Если в результате вычисления условия будет получено значение FALSE (ложь, т.е. нуль), то выполняется выражение_2 , и результатом выполнения оператора условия будет значение, полученное при вычислении выражение_2 .

Оператор условия часто описывают как оператор ?. Тернарный оператор условия ? наиболее часто используется для присвоения переменной одного из двух значений в зависимости от некоторого условия.

4.6. Оператор break (от английского – прерывать)

Оператор или утверждение break служит для немедленного выхода из цикла, будь то while , for или do–while . После выхода из цикла выполнение программы продолжается с утверждения (фрагмента программы), непосредственно следующего за циклом.

Если оператор break встречается во вложенном цикле (вложенных циклах), то будет прекращено выполнение того цикла, в котором этот оператор встретился.

Необходимость в использовании оператора прерывания break в теле цикла возникает тогда, когда условие продолжения итераций нужно проверять не в начале цикла (как в циклах while и for ) и не в конце тела цикла (как в цикле do–while ), а в середине тела цикла [4.2].

Формат записи оператора break :

4.7. Оператор continue (от английского – продолжать)

Оператор или утверждение continue служит для перехода к следующей итерации цикла [4.2].

Оператор continue противоположен по действию оператору break . Оператор continue позволяет в любой точке тела цикла ( while , for или do–while ) прервать текущую итерацию и перейти к проверке условий продолжения цикла . В соответствии с результатами проверки либо заканчивается выполнение цикла, либо начинается новая итерация. При этом все утверждения (фрагменты программы), которые следуют за оператором continue (ключевым словом), автоматически пропускаются.

Ссылка на основную публикацию
Adblock
detector