Линейные вычислительные процессы

Линейный вычислительный процесс представляет собой последовательность действий, выполняемых одно за другим. Осно­ву программы линейного вычислительного процесса составляют оператор присваивания и операторы ввода-вывода данных.

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

Оператор присваивания служит для вычисления выра­жения и записи результата в память компьютера.

Общий вид записи оператора

переменная=выражение;

Знак = читается как «присвоить». Конец любого оператора на языке С++ фиксируется точкой с запятой.

Работа оператора присваивания

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

c = a + b; //вычислит сумму a и b и запишет результат в c.

Тип результата выполнения оператора

При записи оператора присваивания необходимо строго сле­дить за типом переменной, стоящей в левой части оператора, и типом выражения:

• если переменная слева - вещественного типа, то арифметическое выражение может быть как целым, так и вещественным.

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

m=20+15/4.0;

вещественной переменной т будет присвоено значение 23.0;

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

float a, b, c;

int n;

Тогда записать оператор присваивания в виде: n=а*b/с; приведет к усечению результата до целого типа.

В операторе присваивания конечный результат вычисления выражения в правой части приводится к типу переменной, которой должно быть присвоено это значение. Данный процесс может привести к понижению типа, как описано выше, или к повышению, при котором величина приводится к типу данных, имеющему более высокий приоритет. Последовательность имен типов, упорядоченных от высшего типа к низшему типу, выглядит так: double, float, long, int, short, char. Применение ключевого слова unsigned повышает ранг соответствующего типа данных со знаком. Повышение типа обычно происходит гладко, в то время как понижение может привести к затруднениям (скрытым ошибкам). Запомним, что тип значения выражения в правой части оператора присваивания всегда преобразуется к типу переменной, которой присваивается это значение.