Оператор выбора if..else

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

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

if (выражение) оператор;

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

Например, предположим, что проходной балл на экзамене равен 60. Оператор псевдокода

Если оценка студента больше или равна 60

Вывести на экран «Зачет»

определяет, является ли условие «оценка студента больше или равна 60» истинным или ложным. Если условие истинно, на экран выводится «Зачет» и «выполняется» следующий по порядку оператор псевдокода. Если условие ложно, вывод на экран игнорируется и выполняется следующий по порядку оператор псевдокода.

Предыдущий условный оператор псевдокода может быть написан на С++ как

if (grade >= 60 )

cout << “Зачет”;

Обратите внимание, что код на C++ близко соответствует псевдокоду. Это является одним из свойств псевдокода, делающих его таким полезным инструментом разработки программ.

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

if (выражение)

оператор;

else

оператор;

Например, оператор псевдокода

Если оценка студента больше или равна 60

Тогда вывести на экран «Зачет»

Иначе

Вывести на экран «Незачет»

выводит на экран «Зачет», если оценка студента больше или равна 60, либо выводит

«Незачет», если оценка студента меньше 60. В любом случае после вывода на экран

«выполняется» следующий по порядку оператор псевдокода.

Предыдущая структура псевдокода если..иначе может быть написана на С++ как

if ( grade >= 60 )

cout << “Зачет” ;

else

cout << “Незачет”;

 

В теле оператора выбора ifпредполагается наличие только одного оператора. Чтобы включить в тело ifнесколько операторов, нужно заключить этот набор операторов в фигурные скобки ({ и }). Совокупность операторов, содержащихся внутри пары фигурных скобок, называется составным оператором или блоком. Составной оператор может быть помещен в любое место программы, где может стоять простой оператор.

Следующий пример содержит составной оператор в ветви else оператора if..else.

if ( grade >= 60 )

cout << “Зачет”;

else

{

cout << “Незачет”;

cout << “Вам следует снова пройти этот курс”;

}

 

В этом случае, если переменная gradeменьше 60, программа выполняет оба оператора coutвнутри ветви elseи выводит

Незачет

Вам следует снова пройти этот курс.

 

Обратите внимание на фигурные скобки, в которые заключены оба оператора в предложении else.Эти скобки важны. Без этих скобок оператор

сout << “Вам следует снова пройти этот курс”;

оказался бы вне тела else-ветви оператора if и выполнялся бы вне зависимости от того, меньше 60 значение gradeили нет.