Слайд 2Алфавит и идентификаторы
В языке С++ используются:
латинские заглавные буквы (A …
Z);
латинские строчные буквы (a … z);
арабские цифры (0, 1, …, 9);
специальные знаки (+, - , *, / и др.).
Идентификатором называется любая последовательность букв, символа подчеркивания и цифр, начинающаяся с буквы или символа подчеркивания (т.е. имя переменной не может начинаться с цифры).
Слайд 3Правила именования переменных
язык C++ является регистрозависимым, т.е. Var и var –
это две разные переменные;
большинство программистов следуют негласному правилу использования в названиях переменных только прописных букв (или букв нижнего регистра);
некоторые программисты употребляют в именах как строчные, так и прописные буквы: IntVar или dataCount;
имена, состоящие только из строчных букв (или букв верхнего регистра), иногда применяются для обозначения констант (например, const double PI);
однобуквенные имена (i или j) рекомендуется использовать только для временных переменных, таких как счетчики циклов;
желательно, чтобы имя переменной отражало ее смысл; например, имя farengeit_temp является более предпочтительным, чем ft или t;
в качестве имен переменных нельзя использовать ключевые слова языка С++ (например, int, class, if, while и др.).
Слайд 4Примеры объявления переменных
Слайд 5Константы
В языке С++ предусмотрены два типа констант: литеральные и символьные.
Литеральная константа
– это значение, непосредственно вводимое в программе.
Например,
delta = gamma * 100;
здесь целое число 100 – это литеральная константа.
Символьная константа – это именованная константа (т.е. константа, представленная именем).
Например,
const int BITS_IN_WORD = 32;
Очевидно, что второй вариант задания константы более предпочтителен, т.к. если по каким-либо причинам потребуется изменить ее значение, то для этого будет достаточно изменить только одно место в программе.
Слайд 6Стандартные типы данных языка С++
Слайд 7Беззнаковые целые типы языка С++
Слайд 8Константы
В языке С++ предусмотрены два типа констант: литеральные и символьные.
Литеральная константа
– это значение, непосредственно вводимое в программе.
Например,
delta = gamma * 100;
здесь целое число 100 – это литеральная константа.
Символьная константа – это именованная константа (т.е. константа, представленная именем).
Например,
const int BITS_IN_WORD = 32;
Очевидно, что второй вариант задания константы более предпочтителен, т.к. если по каким-либо причинам потребуется изменить ее значение, то для этого будет достаточно изменить только одно место в программе.
Слайд 10Основные операции для целых чисел
Слайд 11Особенности проведения операций с целыми числами
допустимо смешивать в выражении различные целые типы.
Например, операция x + y, где x – переменная типа short, а y – переменная типа long, будет корректной. При выполнении такой операции значение переменной x преобразуется к типу long. Такое преобразование можно произвести всегда без потери в точности, т.е. мы не теряем при этом никаких значащих цифр.
общее правило преобразования целых типов состоит в том, что более короткий тип при вычислениях преобразуется в более длинный;
только при выполнении операции присваивания длинный тип может преобразовываться в более короткий.
Замечание. Не путайте операцию присваивания (=) и операцию равенства (==).
Слайд 12Пример неправильного использования операции равенства
Слайд 13Пример неправильного использования операции равенства
Слайд 15Пример использования беззнаковой переменной
Слайд 16Пример эффекта «заворачивания» (wrapping)
Вопрос: чему равно значение x + 1 ?
Слайд 17Пример эффекта «заворачивания» (wrapping)
Слайд 18Особенности проведения операций с вещественными числами
Для представления вещественных чисел в языке С++
существует три типа: float – с одинарной точностью, double – с двойной точностью и long double – с расширенной точностью.
Точность представления чисел составляет 7 десятичных значащих цифр для типа float, 15 значащих цифр для типа double и 19 значащих цифр для типа long double.
Вещественные числа записываются либо в виде десятичных дробей, например, 1.3, 3.14159, 0.0005, либо в виде мантиссы и экспоненты: 1.2Е0, 0.12е1.
Замечание. По умолчанию вещественная константа принадлежит к типу double.
Слайд 19Особенности проведения операций с вещественными числами
Для вещественных чисел определены все стандартные арифметические
операции за исключением операции нахождения остатка от деления.
Если арифметическая операция применяется к двум вещественным числам разных типов, то менее точное число преобразуется к более точному, т.е. float преобразуется к double и double преобразуется к long double. Очевидно, что такое преобразование всегда можно выполнить без потери точности.
Если вторым операндом в операции с вещественным числом является целое число, то целое число преобразуется в вещественное представление.
Слайд 20Правила преобразования типов
при использовании в операциях данных разного типа для корректности
проведения вычислений происходит неявное преобразование типов по следующему правилу: менее точное число преобразуется к более точному, например
int → float, float → double
при автоматическом преобразовании (преобразование по умолчанию) вещественного числа в целое число, у вещественного числа просто отбрасывается дробная часть: 15,745 → 15;
для корректного округления вещественных чисел в языке С++ используются функции floor() (для округления с недостатком: floor(15,745) = 15) и ceil() (для округления с избытком: ceil(15,745) = 16), подключаемые с помощью заголовочного файла math.h.
Слайд 23Особенности типа char
В языке С++тип данных char относится к целочисленному, т.е. любому
символу в языке С++ соответствует некоторое целое число.
Слайд 24Примеры потери точности при неявном преобразовании