4381

Переменные. Константы. Типы данных. Операции в С++

Лабораторная работа

Информатика, кибернетика и программирование

Переменные. Константы. Типы данных. Операции в С++ Цель: понимать, что такое типы данных, уметь правильно выбрать тип данных для используемой переменной, знать какой объем памяти приходится на каждый тип данных знать, что такое константы уметь пра...

Русский

2012-11-18

74.5 KB

21 чел.

Переменные. Константы. Типы данных. Операции в С++

Цель: понимать, что такое типы данных, уметь правильно выбрать тип данных для используемой переменной, знать какой объем памяти приходится на каждый тип данных; знать, что такое константы; уметь правильно создавать переменные.

Теоретический материал

В лабораторной работе №1 описано, как создаются имена переменных, синтаксис написания имени переменных и объявления переменной:

Тип_ переменной Имя_Переменной;

или

Тип_переменной Имя_Переменной_1, Имя_Переменной_2, Имя_Переменной_3;

Типы данных

При объявлении переменных обязательно нужно указать, какого типа она будет. Для определения и описания переменных основных типов используются следующие ключевые слова:

  •  

  •  char (символьный);
  •  short (короткий целый);
  •  int (целый);
  •  long (длинный целый);
  •  float (вещественный);
  •  double (вещественный с удвоенной точностью);
  •  void (отсутствие значения) (будет рассматриваться при изучении функций в С++);

В таблице 2.1 приведены основные типы данных с диапазоном значений и назначением типов.

Таблица 2.1: Основные типы данных

Переменные

Тип

данных

Размер,

бит

(байт)

Диапазон значений

Примечание-назначение типа

Символьные

unsigned char

8 бит

(1 байт)

0…255

Небольшие целые числа и коды символов.

char

8 бит

(1 байт)

-128…127

Очень малые целые числа и ASCII-коды.

Перечисления

enum

16 бит

(2 байта)

-32768…32767

Упорядоченные наборы целых значений.

Целочисленные

unsigned int

16 бит

(2 байта)

0…65535

Большие целые и счётчики циклов.

short int

16 бит

(2 байта)

-32768…32767

Небольшие целые. Управление циклами.

int

16 бит

(2 байта)

-32768…32767

Небольшие целые. Управление циклами.

unsigned long

32 бит

(4 байта)

0…4294967295

Астрономические расстояния.

long

32 бит

(4 байта)

-2147483648…

…2147483647

Большие числа, популяции.

Вещественные

float

32 бит

(4 байта)

3.4Е-38…

…3.4Е+38

Научные расчёты (7 значащих цифр)

double

64 бит

(8 байт)

1.7Е-308…

…1.7Е+308

Научные расчёты (15 значащих цифр)

long double

80 бит

(10 байт)

3.4Е-4932…

…1.1Е+4932

Финансовые расчёты (19 значащих цифр)

Функция sizeof()

Иногда необходимо определить сколько памяти занимает та или иная переменная. Для этого используют функцию sizeof(имя переменной). Например:

int x, z;

char y;

double d;

cout<<sizeof(x); // выведет число 2

cout<<sizeof(d); // выведет число 8

cout<<sizeof(z); // выведет число 2

cout<<sizeof(y); // выведет число 1

Арифметические операции

Большинство программ выполняют арифметические операции. Множество арифметических операций представлено в таблице 2.2

Таблица 2.2: Множество арифметических операций в С++

Название операции в С++

Арифметическая операция

Алгебраическое выражение

Выражение на С++

Сложение

+

p + 9

p + 9

Вычитание

d – s

d – s

Умножение

*

md

m * d

Деление

/

 или  или

x / y

Вычисление остатка

%

d mod f

d % f

Чтобы арифметическое выражение можно было ввести в компьютер, выражение необходимо вводить только в одну строку. Каждая строка (и каждый оператор) должны заканчиваться точкой с запятой, которая означает конец ввода данной команды. При написании арифметических выражений на С++, также как и в математике, необходимо соблюдать приоритеты выполнения действий. Приоритет устанавливается с помощью круглых скобок или в зависимости от действия (умножение или сложение, вычитание или частное). Например, арифметическое выражение a+b*d при a = 3, b = 2, d = 5 даст результат 13. А если рассчитать то же самое выражение, но при этом, поставить круглые скобки, указывающий приоритет выполнения действии — (a+b)*d, то результат будет равен 25. Поэтому, при программировании арифметических выражений необходимо соблюдать правило старшинства операций, которые приведены в таблице 2.3.

Таблица 2.3: Таблица старшинства операций

Символ операции

Имя операции

Последовательность выполнения (старшинство)

()

Круглые скобки

Выполняются первыми. Если круглые скобки вложенные, выражение внутри самой внутренней пары вычисляется первым. Если имеется несколько пар круглых скобок «одинакового уровня» (то есть не вложенных), они выполняются слева направо.

*, / или %

Умножение

Деление

Вычисление остатка

Выполняются вторыми. Если их несколько, они выполняются слева направо.

+ и -

Сложение

Вычитание

Выполняются последними. Если их несколько, они выполняются слева направо.

Присваивание

Чтобы переменная содержала в себе данные необходимо к этой переменной их присвоить. Для присваивания используют символ равенства ( = ). Слева пишется переменная, в которую необходимо записать данные, справа от знака равно само значение, которое нужно запомнить. Пример:

int f;

f = 7;

Кроме того присваивать можно и при объявлении переменной. Пример:

int t = 9, f = 78, d = 34;

С помощью знака равенства в переменную можно перезаписывать множество раз. Однако использовать переменную можно только лишь после её объявления (ниже самого объявления), в противном случае возникнет ошибка.

Константы

Константы в С++ предназначены для хранения данных, которые специально или случайно нельзя изменить. Константами могут быть такие значения как число пи (3,14…) или может быть количество дней в неделю (7), а может быть расстояние от Земли до Солнца и др. Суть констант заключается в том, что их можно использовать в вычислениях, при выводе данных, но саму константу перезаписать как переменную нельзя. Синтаксис объявления констант:

const тип_данных Пример объявления констант:

const double pi=3.14;

const int count_day_week=7;

Если вы попытаетесь выполнить следующее действие pi = 90.05 , то компилятор выдаст ошибку.

Ход работы

  1.  Запустите программный продукт С++.
  2.  Создайте новый проект console application, сохраните его и добавьте в него source file.
  3.  В таблице 2.1 приведены основные типы, используемые в С++. Вам необходимо вывести на экран имя типа данных, затем размер в байтах, после размер в битах. (Для определения размера типа данных используйте функцию sizeof())
  4.  Общее задание для всех — напишите код, рассчитывающий алгебраическое выражение:

.

При написании необходимо учитывать приоритеты выполнения частей выражения, для этого следует использовать круглые скобки. Переменная r должна принимать целые числа, находящихся в диапазоне [0, 255], n — [0, 65535], m — [-128, 127]. Все переменные целочисленные. k — константа, k = 1,637858763328102. Результат записать в переменную w и вывести на экран.

  1.  В тетрадях нарисуйте блок схемы с выполнением вашей работы.
  2.  В тетрадях письменно обосновать, почему той или иной переменной были назначены тот или иной тип данных.

Содержание отчёта

  1.  Тема и номер лабораторной работы.
  2.  Цель работы.
  3.  Ход работы.
  4.  Код программы, который обязательно должен содержать комментарии и условие задачи.
  5.  Исходный код программы со всем проектом в целом в электронном виде.
  6.  Выводы по проделанной лабораторной работе.


 

А также другие работы, которые могут Вас заинтересовать

15439. Общая характеристика предприятия в Project Expert 641.5 KB
  Лабораторная работа № 3 Общая характеристика предприятия Цель: приобрести навыки по описанию компании в Project Expert Задачи: научиться создавать календарный план научиться распределять ресурсы научиться составлять списки активов Структу...
15440. Основная деятельность предприятия в Project Expert 271 KB
  Лабораторная работа № 4 Основная деятельность предприятия Цель: научиться структурировать основную деятельность предприятия Задачи: научиться описывать объемы производства научиться составлять план по персоналу Структура лабораторно...
15441. Результаты и анализ проекта в Project Expert 772.5 KB
  Лабораторная работа № 5 Результаты и анализ проекта Цель: научиться анализировать результаты проекта Задачи: научиться вводить формулы научиться составлять графики научиться создавать пользовательские таблицы научиться создавать отчет ...
15442. Исследование финансовой эффективности в Project Expert 1.05 MB
  Лабораторная работа №6 Исследование финансовой эффективности Цель: научиться анализировать финансовую эффективность Задачи: научиться составлять таблицы для анализа научиться составлять прогнозы эффективности Структура лабораторной...
15443. Анализ кризисных ситуаций в Project Expert 67 KB
  Лабораторная работа № 7 Анализ кризисных ситуаций Цель: приобрести навыки по анализу кризисных ситуаций и поиску путей их решения Задачи: научиться анализировать кризисные ситуации научиться анализировать научиться находить пути выхода из кр
15444. Изучение эффективности чисто-конкурентных фирм и неэффективность монополий 236 KB
  Введение На поведение каждой фирмы влияет характер тип рынка на котором она функционирует. Тип рынка зависит от вида продукции количества фирм на нем наличия или отсутствия ограничений на вход в отрасль и выход из нее доступности информации о ценах нововведениях и т...
15445. ОПРЕДЕЛЕНИЕ ЭЛЕКТРОЕМКОСТИ КОНДЕНСАТОРА 352 KB
  ОПРЕДЕЛЕНИЕ ЭЛЕКТРОЕМКОСТИ КОНДЕНСАТОРА Методические указания к лабораторной работе №8 по физике Указания содержат краткое описание рабочей установки и методики определения электроемкости конденсатора методом моста Сотти. Методические указания предназна...
15446. ОПРЕДЕЛЕНИЕ СОСТАВЛЯЮЩИХ ИНДУКЦИИ МАГНИТНОГО ПОЛЯ ЗЕМЛИ 349 KB
  ОПРЕДЕЛЕНИЕ ГОРИЗОНТАЛЬНОЙ СОСТАВЛЯЮЩЕЙ ИНДУКЦИИ МАГНИТНОГО ПОЛЯ ЗЕМЛИ МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ №16ПО ФИЗИКЕ Раздел Электричество и магнетизм Указания содержат краткое описание рабочей установки и методику определения горизонтально
15447. ИЗМЕРЕНИЕ УДЕЛЬНОГО СОПРОТИВЛЕНИЯ ПРОВОДНИКА МЕТОДОМ ВОЛЬТМЕТРА-АМПЕРМЕТРА 597 KB
  Измерение удельного сопротивления проводника методом вольтметраамперметра Методические указания к выполнению лабораторной работы № 38 Указания содержат краткое описание рабочей установки и методики определения удельного сопротивления проволоки методом вольтм