4381

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

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

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

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

Русский

2012-11-18

74.5 KB

20 чел.

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

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

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

В лабораторной работе №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.  Выводы по проделанной лабораторной работе.


 

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

85218. Методические указания: Финансы и кредит 217 KB
  Методические указания по выполнению дипломных работ содержат рекомендации по выполнению дипломной работы: постановка цели дипломной работы, выбор темы, организация работы, процедура защиты дипломной работы в государственной аттестационной комиссии (ГАК).
85219. Расторжение трудового договора по инициативе работодателя, его порядок и условия 627.5 KB
  При разрешении конкретных дел о восстановлении на работе нельзя не учитывать что незаконное расторжение трудового договора контракта нередко создает трудности в трудоустройстве в соответствии с профессиональной квалификацией снижение жизненного уровня в связи с потерей заработка порою на длительное время...
85220. Анализ линейной разветвленной электрической цепи различными методами 425.91 KB
  Целью курсовой работы является овладение некоторыми современными методами анализа линейной электрической цепи при различных воздействиях в переходном и установившемся режимах с применением вычислительной техники.
85223. РОЛЬ МЕДИЦИНСКОЙ СЕСТРЫ ПРИ УХОДЕ ЗА ПАЦИЕНТОМ С ПОРАЖЕНИЕМ ОПОРНО-ДВИГАТЕЛЬНОГО АППАРАТА (АРТРОЗОАРТИТ) 128.13 KB
  Весь лечебный процесс любого заболевания состоит из врачебного и сестринского. Болезни опорно-двигательного аппарата не являются исключением. Заболевания опорно-двигательного аппарата приносят психоэмоциональные и физические страдания, ограничивают физическую активность и способность к передвижению...
85224. Профориентация выпускников средних школ средствами социально-культурной деятельности 1.25 MB
  В последнее время всё чаще возникает проблема безынициативности и отсутствия мотивации у вступивших во взрослую жизнь индивидов. Это чревато низким качеством труда и производимых благ. Люди всё чаще работают не по своей специальности, не развиваются и зачастую не любят свою работу.
85226. Gроектирование и разработкf информационной системы учёта реализации торгового оборудования 1.69 MB
  Своевременное и правильное оформление документов и контроль за каждой операцией поступления оборудования либо других товаров от поставщиков, из переработки и других источников, выявление расхождения фактического наличия и количества, указанного в сопроводительных документах...