Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

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






Условные операторы






Оператор объявления

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

Int x; // объявление переменной xтипа int

Double f, sum; // объявление f, sum типа double

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

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

x = y + z;

Оператор присваивания в С++ отличается от аналогичных операторов в других языках программирования тем, что может входить в более крупные выражения. В качестве результата оператор возвращает значение, присвоенное левому операнду. Например, следующее выражение вполне корректно:

value1 = 5 * (value2 = 8);

В данном случае сначала переменной value2 будет присвоено значение 5, после чего это значение будет умножено на 8 и результат 40 будет записан в переменную value1.

Оператор присваивания также часто применяется для присваивания нескольким переменным одинакового значения, например:

x = y = z = 0;

Составной оператор

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

{

f = a + b; c = f * a; m = f * c;

}

Операторы, входящие в составной оператор, разделяются точкой с запятой.

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

{

f = a + b;

{ x = f * a; m = f * c; } c = f * x * m;

}

Пустой оператор

Пустой оператор в программе представляется отдельной точкой с запятой, которая в данном случае завершает пустое действие.

Условные операторы

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

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

В С++ оператором проверки условия является оператор if который, позволяет выбрать один из двух возможных вариантов выполнения действий в зависимости от выполнения определенного условия. Общая форма записи оператора if имеет вид:

if (условие) оператор_1; [else оператор_2; ]

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

При выполнении оператора if сначала вычисляется условие. Если результат – истина (любое отличное от нуля значение), то выполняется оператор_1. Если результат анализа условия – ложь (значение равно 0), то выполняется оператор _ 2. В случае отсутствия конструкции else, оператор _ 1 пропускается, и управление передаётся на оператор, следующий после if. Операторы, стоящие после if и else, могут быть составными. Рассмотрим примеры оператора if:

· if (x < y) min = x; // нахождение минимума

else min = y; // из двух чисел x и y

· cin> > val; // проверка правильности ввода

if (val < 1 || val > 10) cout< < " Error vvoda";

· if (x) y = 1 / x; // выч. y по формуле y = 1 / x,

else сout< < " Error: x = 0 \n"; // если значение x не равно 0

· if(val < 0) val = -val; // абсолютная величина числа

В языке С++ имеется короткий способ записи оператора if…else с помощью условной операции (?), например:

min = (x < y)? x: y; // нахождение min (x, y)

// Пример4.2. Если значения a и b положительны, найти их произведение,

// в остальных случаях вычислить их сумму.

#include < iostream>

using namespace std;

int main() {

int a, b, rez;

cout < < " Enter the number a, b: "; cin> > a> > b;

cout< < " a = " < < a< < " b = " < < b< < endl;

if(a > 0 & & b > 0){rez = a * b; cout< < a< < " * " < < b < < " = "; }

else{rez = a + b; cout< < a< < " + " < < b< < " = "; }

cout< < rez< < endl;

}


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.006 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал