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


 

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

8525. Політичний режим. Політичний устрій 34.5 KB
  Тема уроку. Політичний режим. Політичний устрій. Мета уроку. Мета: Навчити ліцеїстів основних поняттям теорії держави та влади розвивати вміння висловлювати власне ставлення до проблеми виховувати почуття правової свідомості. Обладнання: Дошка, пі...
8526. Україна у складі Росії та Австро-Угорщини. Економічне становище 28.54 KB
  Україна у складі Росії та Австро-Угорщини. Економічне становище. Мета уроку: Визначити особливості розвитку промисловості в Наддніпрянській та Західній Україні порівняти, як відбувався розвиток сільського господарства на українських землях у складі...
8527. Вступ. Зміст, завдання, структура курсу новітня історія України в 10 класі 49 KB
  Вступ. Зміст, завдання, структура курсу новітня історія України в 10 класі. Мета: Визначити, який період історії України вивчатиметься цього навчального року пояснити якою була територія і населення України на початку ХХ століття ознайомити учнів ...
8528. Цінності та перспективи християнської моралі 20.98 KB
  Тема уроку: Цінності та перспективи християнської моралі (11-кл.) Мета уроку: Н: Ознайомити учнів з основними поняттями мораль, християнська мораль, визначити їхню важливість та перспективи в сучасному світі Р: Сприяти розвитку пізнавального інтере...
8529. Державний лад. Форми правління. Урок 53.61 KB
  Тема уроку. Державний лад. Форми правління. Мета уроку: ознайомити учнів з основними аспектами питання про державний лад та форми правління розвивати в учнів здатність застосовувати отримані знання на практиці виховувати в ліцеїстів...
8530. Початок Української революції. Утворення Центральної Ради 58 KB
  Початок Української революції. Утворення Центральної Ради. Мета: зясувати причини, мету, програму діяльності Центральної ради, розглянути перший етап Української революції та його особливості, розвивати навички аналізу історичних фактів, вмін...
8532. Философия науки неопозитивизма: основные концепции 23.06 KB
  Философия науки неопозитивизма: основные концепции Третий этап позитивизма: неопозитивизм. (40-е гг. 20 в.) Основные представители: Шлик, Нейрат, Карнар, Айер. Главная задача философии неопозитивизма - это анализ языка науки, поэтому этот этап ...
8533. Постпозитивизм. проблема демаркации эмпирических и теоретических наук 19.63 KB
  Постпозитивизм. проблема демаркации эмпирических и теоретических наук Позитивизм - направление в науке и философии, исходящее из позитивного, т. е. из данного, устойчивого, фактического, несомненного, и ограничивает им свое изложение и исслед...