Переменные – это параметры программы, которые позволяют хранить какие-либо данные.
Каждая переменная имеет имя (идентификатор) и значение определенного типа. В языке С++ каждая переменная должна быть описана. При описании указывается имя и тип описываемой переменной. Имя переменной обязательно должно начинаться с буквы, далее могут следовать буквы и цифры. В С++ регистр имеет значение: «A» и «a» – разные переменные.
В данном разделе нам потребуются лишь целочисленные переменные, которые могут быть представлены в программе одним из следующих типов:
Целые типы данных
Тип данных
Допустимые значения
Память, байт
char
-128 ... 127
1
unsigned char
0 … 255
1
short
-32768 … 32767
2
unsigned short
0 … 65535
2
int
-2147483648 ... 2147483647
4
unsigned int
0…4294967295
4
long long
-9223372036854775808 … 9223372036854775807
8
unsigned long long
0 … 18446744073709551615
8
Отметим, что в большинстве случаев (в частности при решении задач данного раздела) оказывается достаточным использование всего двух целых типов: int и long long.
Операции над целыми типами
Среди базовых операций над целыми типами данных в языке C++ можно выделить следующие:
Операция
Описание
+
сложение
−
вычитание
*
умножение
/
деление нацело
%
вычисление остатка от деления
Целочисленное деление и остаток от деления
Деление с остатком – арифметическая операция, результатом которой является два целых числа: неполное частное и остаток от деления целого числа на другое целое число.
13/5 = 2 (неполное частное)
13%5 = 3 (остаток от деления)
a = k×b + q
(0 ≤ q < |b|)
a - делимое
b - делитель
k - неполное частное
q - остаток
q = a - k×b
13 = 2×5 + 3
167 = 27×6 + 5
Заметим, что операция остатка от деления в языке C++ (как и во многих языках) работает некорректно для отрицательных чисел. Результатом операции a%b может быть отрицательное число. Чтобы этого избежать приходится прибегать к использованию выражения (a%abs(b) + abs(b)) % abs(b), где abs(x) - функция вычисления модуля целого числа.