Клон в програмата

Вложени условни изрази

Когато е необходимо да се провери последователно няколко взаимно изключващи се условия, отделен блок не се отваря за останалите части (следващият, ако е написан като обикновен израз, а не като съставен израз), за да се получи по-компактен запис. Такива конструкции в кода се наричат ​​else ... if.

Нека първо разгледаме опцията за писане с вложени блокове. Например, помислете за следната задача.

Един мъж попълва въпросник във военната регистрация и програмата трябва, в зависимост от посочената от него възраст, да показва различни подкани, а именно:

  1. Ако възрастта е посочена от 18 до 27 години, съобщете, че пълнителят подлежи на набор или може да служи по договор.
  2. Ако възрастта е от 28 до 59 години, тогава докладвайте, че пълнителят може да служи по договор.
  3. Ако посочената възраст е под 18 или над 59 години, тогава докладвайте, че пълнителят е на възраст, която не е призована.
  4. Ако посочената възраст е неположителна или над 100 години, съобщете за грешка.

Да предположим, че възрастта се съхранява в променливата n, тогава е необходим следният код, за да се покаже подсказката:

Моля, обърнете внимание, че веднага щом едно от условията се окаже истина, всички последващи проверки няма да бъдат извършени (т.е. в най-добрия случай ще бъде извършена само първата проверка). Съответно, съобщение за грешка ще се покаже тогава и само ако всички проверени условия дават фалшив резултат.

Освен това, за отчитане на възрастта без набор, условието е избрано, като се вземе предвид фактът, че лицето, което попълва въпросника, не съответства на нито една от вариантите за проект на възраст. Разбира се, може да се използва следното условие:

Но би било излишно, тъй като по-рано (поради горните проверки) вече се уверихме, че променливата n не попада в интервала [18; 60). Ако променливата е попаднала в интервала, тогава се появява съобщението „Можете да преминете през задължителна или договорна услуга“ или „Можете да обслужвате само по договор“.

Оператор с множествен избор

Превключвателят с множествен избор ви позволява да изпълнявате различни части на програмата, в зависимост от това каква стойност ще има някаква целочислена променлива (тя се нарича „превключваща променлива“, а „превключвател“ се превежда от английски като „превключвател“).

Диаграмата с инструкции е както следва:

Нека разгледаме всички елементи на оператора:

  • превключвателят е цяло число променлива или израз, даващ цяло число резултат;
  • value1, value2, ... са целочислени литерали, с които стойността на превключвателя ще бъде сравнена. Ако превключвателят е равен на стойносттаN, тогава програмата ще бъде изпълнена от реда, следващ стойността на случаяN: до най-близкото прекъснато прекъсване, или до края на превключващия блок (ако не се открие прекъсване);
  • по подразбиране: е етикетът на инструкцията, след която тя ще бъде изпълнена, ако нито една от N стойностите по-горе не съответства на превключвателя. Етикетът по подразбиране не е задължителен: можете да го пропуснете в блока за превключване на етикети или да не изпълнявате команди след него;
  • инструкцияN е проста или сложна инструкция. Освен това, в случай на комбинирана команда, не е необходимо да комбинирате няколко команди в блок, можете просто да ги напишете една след друга, като ги разделите с помощта на ";" (и стартиране на нови редове за удобство).