Variables and Data Types / 1 of 22

Содержание

Слайд 2

Variables and Data Types / of 22

Задачи:

Анализировать переменные
Находить различия между переменными

Variables and Data Types / of 22 Задачи: Анализировать переменные Находить различия
и константами
Приводить списки различных типов данных и смотреть, как они применяются в различных программах на C
Анализировать различные арифметические операторы

Слайд 3

Variables and Data Types / of 22

Структура простой программы

#include
int main()
{
std::cout

Variables and Data Types / of 22 Структура простой программы #include int
<< "Hello, world!";
return 0;
}

Слайд 4

Variables and Data Types / of 22

Алфавит

Программа на языке программирования записывается с

Variables and Data Types / of 22 Алфавит Программа на языке программирования
помощью символов, образующих алфавит языка. Алфавит языка C++ включает:
большие латинские буквы от A до Z
малые латинские буквы от a до z
цифры от 0 до 9
знаки препинания: , . ; : ! ?
скобки: ( ) [ ] { }
знаки математических операций: + - * / < > =

Слайд 5

Variables and Data Types / of 22

Алфавит

Специальные символы:
\(обратная наклонная черта)
~(волна или тильда)
&(амперсант)
#(решетка

Variables and Data Types / of 22 Алфавит Специальные символы: \(обратная наклонная
или диез)
’(апостроф или одиночная кавычка)
”(двойная кавычка)
^(стрелка)
%(процент)
_(знак подчеркивания)

Слайд 6

Variables and Data Types / of 22

Алфавит

Большие и малые буквы считаются различными.

Variables and Data Types / of 22 Алфавит Большие и малые буквы

Знак подчеркивания считается буквой.
Русские буквы нельзя использовать в операторах языка C++, их можно применять в комментариях и в строках символов, заключенных в двойные кавычки, а также как одиночные символы, заключенные в апострофы.

Слайд 7

Variables and Data Types / of 22

Лексемы

Программа представляет собой последовательность лексем.
Лексема –

Variables and Data Types / of 22 Лексемы Программа представляет собой последовательность
это фрагмент программы, имеющий самостоятельное значение.
Различают следующие виды лексем:
ключевые слова,
идентификаторы,
числовые константы,
строковые константы,
символьные константы,
знаки препинания и знаки операторов.

Слайд 8

Variables and Data Types / of 22

Лексемы

Ключевое слово – это лексема, имеющая

Variables and Data Types / of 22 Лексемы Ключевое слово – это
некоторое предопределенное значение,
Например:
ключевое слово int указывает, что величина, перед которой оно стоит, является целым числом, а ключевое слово for используется при организации циклов.
Ключевые слова нельзя использовать для каких-либо других целей.

Слайд 9

Variables and Data Types / of 22

Лексемы

Идентификатор – это последовательность букв и

Variables and Data Types / of 22 Лексемы Идентификатор – это последовательность
цифр,
начинающаяся с буквы.
Идентификаторы используются как имена элемента (объекта) программы (переменных, функций, классов).
Например, в строку программы
int x0;
входят три лексемы: ключевое слово int, имя переменной целого типа
x0 и знак препинания (;), который завершает данную инструкцию

Слайд 10

Variables and Data Types / of 22

Лексемы

Числовые константы –задают в программе конкретные

Variables and Data Types / of 22 Лексемы Числовые константы –задают в
целые или дробные числа, записываемые по обычным правилам, например, 123, 32.1, 3.21e2.
Строковые константы – это последовательности произвольных символов, заключенные в двойные кавычки, например, ”Строка символов”, ”String of characters”.
Символьные константы представляют в программе одиночные символы, при записи заключаются в одиночные апострофы, например,
’a’, ’A’, ’0’, ’1’. Важно понимать, что ’0’ это символ цифры нуль, а не число нуль.

Слайд 11

Variables and Data Types / of 22

Лексемы

К знакам препинания в C++

Variables and Data Types / of 22 Лексемы К знакам препинания в
относятся два символа: (;) (точка с запятой) и (,) (запятая), служащие для разделения лексем.
Символом (;) оканчивается любое предложение (оператор) программы.
Запятая разделяет переменные при их объявлении, аргументы функций.
В некоторых случаях запятая является не только чистым знаком препинания, но и оператором (операндом).
Другие символы (. : ? !), которые в естественных языках являются знаками препинания, в C++ обозначают операторы (операнды).
Кроме знаков препинания, разделителями лексем являются пробелы и знаки операторов

Слайд 12

Variables and Data Types / of 22

Переменные

Данные

Память

Расположение в памяти уникально

Переменным присваивается имя

Variables and Data Types / of 22 Переменные Данные Память Расположение в
( идентификатор),
указывающее на местоположение в памяти

15

Слайд 13

Variables and Data Types / of 22

Переменные

Переменная обладает характеристиками:
- имя (

Variables and Data Types / of 22 Переменные Переменная обладает характеристиками: -
идентификатор)
тип
значение

Слайд 14

Variables and Data Types / of 22

Пример

A, B и C – переменные

Variables and Data Types / of 22 Пример A, B и C
псевдокода

Переменные избавляют программиста от необходимости указывать доступ к памяти по адресу

Операционная система отвечает за распределение переменных в памяти

Для обозначения участка памяти достаточно использовать имя переменной

Слайд 15

Variables and Data Types / of 22

Константы

Константы никогда не изменяют значения
Примеры
5

Variables and Data Types / of 22 Константы Константы никогда не изменяют
число / константа целого типа
5.3 число / константа с плавающей точкой
‘Black’ строковая константа
‘C’ символьная константа
Переменные содержат значения констант

Слайд 16

Variables and Data Types / of 22

Имена переменных, функций, меток и других

Variables and Data Types / of 22 Имена переменных, функций, меток и
объектов определенных пользователем называются идентификаторами
Некоторые правильные имена идентификаторов
arena
s_count
marks40
class_one
Примеры неправильного использования имен идентификаторов
1sttest
oh!god
start... end
Идентификаторы могут быть любой удобной длинны, но количество символов распознаваемых компилятором различается в зависимости от компилятора
Идентификаторы в C чувствительны к реестру

Имена идентификаторов

! is invalid

Слайд 17

Variables and Data Types / of 22

Советы для наименования идентификаторов

Variables and Data Types / of 22 Советы для наименования идентификаторов

Слайд 18

Variables and Data Types / of 22

Данные

В переменных могут храниться различные

Variables and Data Types / of 22 Данные В переменных могут храниться
типы данных. Вот некоторые примеры:
Числа.
Целые числа. Например, 10 или 178993455.
Вещественные. Например, 15.22 или 15463452.25.
Положительные числа.
Отрицательные числа.
Имена. Например, John.
Логические значения. Например, Y или N.

Слайд 19

Variables and Data Types / of 22

Данные

Тип данных имя переменной

Тип данных

Variables and Data Types / of 22 Данные Тип данных имя переменной
описывает тот тип информации, которая там будет хранится

Имя переменной указывается перед её типом данных

Например, тип данных int указывается перед именем varName

int varName

Слайд 20

Variables and Data Types / of 22

Основные типы данных

Variables and Data Types / of 22 Основные типы данных

Слайд 21

Variables and Data Types / of 22

Целочисленный тип данных(int)

Хранит целые числа
int num;
Не

Variables and Data Types / of 22 Целочисленный тип данных(int) Хранит целые
может хранить другой тип данных, как, например, “Alan” или “abc”
Имеет размер 16 бит (2 байта)
Диапазон значений от -32768 до 32767
Например: 12322, 0, -232

Слайд 22

Variables and Data Types / of 22

Число с плавающей точкой(float)

Содержит значения, имеющие

Variables and Data Types / of 22 Число с плавающей точкой(float) Содержит
десятичную точку
float num;
Может хранить значения с точностью до 6 знаков после запятой
Имеет размер 32 бита (4 байта) памяти
Примеры: 23.05, 56.5, 32

Слайд 23

Variables and Data Types / of 22

Число с плавающей точкой двойной точности(double)

Содержит

Variables and Data Types / of 22 Число с плавающей точкой двойной
значения, имеющие десятичную точку
double num;
Может хранить значения с точность до 10 знаков после запятой
Имеет размер 64 бита (8 байт)
Примеры: 32.54, -152.369

Слайд 24

Variables and Data Types / of 22

Символьный тип(char)

Хранит один символ информации

Variables and Data Types / of 22 Символьный тип(char) Хранит один символ
char gender;
gender='M';
Имеет размер 8 бит (1 байт)
Примеры: ‘a’, ‘m’, ‘$’ ‘%’ , ‘1’, ’5’

Слайд 25

Variables and Data Types / of 22

Процедурный тип Void
Этот тип данных

Variables and Data Types / of 22 Процедурный тип Void Этот тип
не хранит никакой информации
Показывает компилятору, что здесь не присутствует никакой информации

Слайд 26

Variables and Data Types / of 22

Установленный тип данных

int

unsigned int
(Допускаются

Variables and Data Types / of 22 Установленный тип данных int unsigned
только положительные числа)

unsigned

Слайд 27

Variables and Data Types / of 22

Подписанные и неподписанные типы данных

Неподписанные

Variables and Data Types / of 22 Подписанные и неподписанные типы данных
типы данных (unsigned) точно определяют, что переменная может содержать только положительные значения
unsigned int varNum;
varNum=23123;
Переменная varNum занимает 2 байта
Модификаторы могут быть использованы как с целочисленными, так и с данными с плавающей точкой
Неподписанные целочисленные данные поддерживают диапазон от 0 до 65535

Слайд 28

Variables and Data Types / of 22

Короткие и длинные типы данных

Короткое

Variables and Data Types / of 22 Короткие и длинные типы данных
целое(short int) занимает 8 бит (1 байт)
Позволят хранить числа в диапазоне от -128 до 127
Длинное целое(long int) занимает 32 бита (4 байта)
-2,147,483,647 and 2,147,483,647
Длинное целое двойной точности(long double) занимает 128 бит (16 байт)

Слайд 29

Variables and Data Types / of 22

Типы данных и их диапазоны-1

Variables and Data Types / of 22 Типы данных и их диапазоны-1

Слайд 30

Variables and Data Types / of 22

Типы данных и их диапазоны -2

Variables and Data Types / of 22 Типы данных и их диапазоны -2

Слайд 31

Variables and Data Types / of 22

Примеры объявления переменных

int main()
{
char abc; /*abc

Variables and Data Types / of 22 Примеры объявления переменных int main()
символьного типа */
int xyz; /*xyz целочисленного типа */
float length; /*length как число с плавающей точкой */
double area; /*area длинное целое двойной точности */
long liteyrs; /*liteyrs как длинное целое */
short arm; /*arm как короткое целое*/
}

Слайд 32

Variables and Data Types / of 22

Примеры объявления переменных

При объявлении переменной мы

Variables and Data Types / of 22 Примеры объявления переменных При объявлении
можем присвоить ей значение в этот же момент. Это называется инициализацией переменной.
int main()
{
int nValue = 5; // копирующая инициализация
int mValue(5); // прямая инициализация
}

Слайд 33

Variables and Data Types / of 22

Примеры объявления переменных

В попытке обеспечить единый

Variables and Data Types / of 22 Примеры объявления переменных В попытке
механизм инициализации, который будет работать со всеми типами данных, в C++11 добавили новый способ инициализации, который называется uniform-инициализация:
int main()
{
int value1{5};
int value2{}; /* инициализация переменной по умолчанию значением 0 (ноль) */
}

Слайд 34

Variables and Data Types / of 22

Примеры объявления переменных

В uniform-инициализации есть еще

Variables and Data Types / of 22 Примеры объявления переменных В uniform-инициализации
одно дополнительное преимущество: вы не сможете присвоить переменной значение, которое не поддерживает её тип данных — компилятор выдаст предупреждение или сообщение об ошибке. Например:
int main()
{
int value{4.5}; /* ошибка: целочисленная переменная не может содержать нецелочисленные значения*/
}

Слайд 35

Variables and Data Types / of 22

Примеры объявления переменных

Когда переменной присваивается значение

Variables and Data Types / of 22 Примеры объявления переменных Когда переменной
после её объявления (не в момент объявления), то это копирующее присваивание (или просто «присваивание»):
int main()
{
int nValue;
nValue = 5; // копирующее присваивание
}

Слайд 36

Variables and Data Types / of 22

Примеры объявления переменных

В одном операторе можно

Variables and Data Types / of 22 Примеры объявления переменных В одном
объявить сразу несколько переменных одного и того же типа данных, разделяя их имена запятыми. Например, следующие 2 фрагмента кода выполняют одно и то же:

Слайд 37

Variables and Data Types / of 22

Примеры объявления переменных

Можно инициализировать несколько переменных

Variables and Data Types / of 22 Примеры объявления переменных Можно инициализировать
в одной строке
int main()
{
int a = 5, b = 6;
int c(7), d(8);
int e{9}, f{10};
}

Слайд 38

Variables and Data Types / of 22

Ошибки объявления переменных

Ошибка №1: Указание каждой

Variables and Data Types / of 22 Ошибки объявления переменных Ошибка №1:
переменной одного и того же типа данных при инициализации нескольких переменных в одном описании. Это не критичная ошибка, так как компилятор легко её обнаружит и сообщит вам об этом:
int a, int b; // неправильно (ошибка компиляции)
int a, b; // правильно

Слайд 39

Variables and Data Types / of 22

Ошибки объявления переменных

Ошибка №2: Использование разных

Variables and Data Types / of 22 Ошибки объявления переменных Ошибка №2:
типов данных в одном описании. Переменные разных типов должны быть объявлены в разных описаниях. Эту ошибку компилятор также легко обнаружит
int a, double b; // неправильно (ошибка компиляции)
int a; double b; // правильно (но не рекомендуется)
// Правильно и рекомендуется (+ читабельнее)
int a;
double b;

Слайд 40

Variables and Data Types / of 22

Ошибки объявления переменных

Ошибка №3: Инициализация двух

Variables and Data Types / of 22 Ошибки объявления переменных Ошибка №3:
переменных с помощью одной операции
int a, b = 5; // неправильно (переменная a остаётся неинициализированной)
int a = 5, b = 5; // правильно

Слайд 41

Variables and Data Types / of 22

Объявление переменных в программе

Более старые

Variables and Data Types / of 22 Объявление переменных в программе Более
версии компиляторов языка Си вынуждали пользователей объявлять все переменные в верхней части функции:
#include
 int main()
{
    // Все переменные в самом верху функции
    int x;
    int y;
    // А затем уже весь остальной код
    std::cout << "Enter a number: ";
    std::cin >> x;
    std::cout << "Enter another number: ";
    std::cin >> y;
    std::cout << "The sum is: " << x + y << std::endl;
    return 0;
}
Имя файла: Variables-and-Data-Types-/-1-of-22.pptx
Количество просмотров: 31
Количество скачиваний: 0