ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 31.03.2023

Просмотров: 191

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Введение

Актуальность работы. Переменными называются такие величины, которые могут изменять свое значение во время выполнения алгоритма. Переменные в программировании отличаются от математических переменных. Они используются как символические имена "фрагментов оперативной памяти компьютера". При выполнении программы в различные моменты времени переменные могут хранить различные значения.

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

Объект исследования: переменные в программировании.

Предмет исследования: структура и типы переменных в программировании.

Цель работы: рассмотреть понятие переменной в программировании и привести виды и типы переменных.

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

- рассмотреть понятие переменной;

- привести виды и типы переменных;

- разобрать основные элементы программирования;

- выполнить анализ работы с переменными.

1. Понятие и типы переменной

1.1. Понятие переменной

Программа оперирует информацией, представленной в виде различных объектов и величин.

Переменная – это символическое обозначение величины в программе. Как ясно из названия, значение переменной (или величина, которую она обозначает) во время выполнения программы может изменяться. [Доорс, Дж.; Рейблейн, А.Р.; Вадера, С. Пролог - язык программирования будущего; М.: Финансы и статистика - , 2011. – с.20]

С точки зрения архитектуры компьютера, переменная – это символическое обозначение ячейки оперативной памяти программы, в которой хранятся данные. Содержимое этой ячейки – это текущее значение переменной. [Доорс, Дж.; Рейблейн, А.Р.; Вадера, С. Пролог - язык программирования будущего; М.: Финансы и статистика - , 2011. – с.21]

В языке C++ прежде чем использовать переменную, ее необходимо объявить. Объявить переменную с именем x можно так: int x;

В объявлении первым стоит название типа переменной int (целое число), а затем идентификатор x– имя переменной. У переменной x есть тип – в данном случае целое число. Тип переменной определяет, какие возможные значения эта переменная может принимать и какие операции можно выполнять над данной переменной. Тип переменной изменить нельзя, т.е. пока переменная x существует, она всегда будет целого типа. [Либерти, Джесс Освой самостоятельно C++ за 21 день; М.: Вильямс - Москва, 2012. – с.204]


Язык C++ строго типизированный язык. Любая величина, используемая в программе, принадлежит к какому-либо типу. При любом использовании переменных в программе проверяется, применимо ли выражение или операция к типу переменной. Довольно часто смысл выражения зависит от типа участвующих в нем переменных. [Либерти, Джесс Освой самостоятельно C++ за 21 день; М.: Вильямс - Москва, 2012. – с.206]

Например, если записать x+y,

где x– переменная, то переменная y должна быть одного из числовых типов.

Соответствие типов проверяется во время компиляции программы. Если компилятор обнаруживает несоответствие типа переменной и ее использования, он выдаст ошибку (или предупреждение). Однако во время выполнения программы типы не проверяются. Такой подход, с одной стороны, позволяет обнаружить и исправить большое количество ошибок на стадии компиляции, а, с другой стороны, не замедляет выполнения программы. [Дьяконов, В.П. Справочник по расчетам на микрокалькуляторах; М.: Наука. Главная редакция Физико-математической литературы - Москва, 2011. – с.413]

Всякое действие производится над некоторыми объектами, и о его результатах можно полностью судить по изменению состояния этих объектов. Один из видов объектов — переменная.

Понятие переменной является одним из центральных понятий программирования. (Понятие переменной имеет в программировании другой смысл, чем в математике.) Поясним это понятие на примере. [Страуступ, Б. Язык программирования С++. Специальное издание / Б. Страуступ. — М.: Бином, 2015. — с.517]

Пример. Требуется найти произведение любых двух натуральных чисел n, m. Результат обозначить через k.

Составим задание для исполнителя, который не умеет выполнять умножение, а умеет лишь складывать. В этом случае решение задачи не может быть выполнено в одно действие, а требует разложения на ряд последовательных действий, т. е. составления программы. [Страуступ, Б. Язык программирования С++. Специальное издание / Б. Страуступ. — М.: Бином, 2015. — с.518]

Так как программа должна "работать" для любой пары натуральных чисел, то сами конкретные числа в программе не фигурируют. Вместо чисел употребляются имена, обозначающие изменяемые объекты, которые называются переменными. Перед началом вычислений этим переменным должны быть присвоены значения. Присвоение — одно из важнейших действий, выполняемых вычислительной машиной (на использование которой в качестве исполнителя мы и ориентируемся в конечном счете).

Переменную можно представить себе как ящик, обозначенный именем, идентифицирующим эту переменную. Присвоение переменной с именем n значения 5 можно представить себе так; положить в ящик, обозначенный n, 5 шаров. (Ящик является аналогом ячейки памяти ЭВМ.)


Значение одной переменной можно переслать в другую переменную. При этой операции значение пересылаемой переменной не изменяется. Например переслать значение n в переменную i, или присвоить переменной i значение n, означает задать i такое же значение, которое имеет переменная n, т.е, скопировать значение n. Если было, допустим, n=5, то присвоение i значения n (записывается i = n — i присвоить значение n) означает, что нужно как бы посмотреть, какое число находится в ячейке памяти n, и такое же число "положить" в ячейку памяти i. Теперь будет i=5, но при этом n сохранило значение (n=5). Следует отметить также, что в выражении i = n знак "=" обозначает не равенство, а операцию присвоения. [Либерти, Джесс Освой самостоятельно C++ за 21 день; М.: Вильямс - Москва, 2012. – с.62]

Часто в программировании используется такая операция присваивания, когда слева и справа используется одна и та же переменная, например, i = i + 1. Такая запись означает, что сначала должна быть выполнена операция сложения (i+1), а затем полученная сумма присвоена переменной i в качестве ее нового значения. При этом старое значение i пропадает, "стирается". После выполнения этой операции i будет иметь значение на 1 больше, чем перед ее выполнением. [Либерти, Джесс Освой самостоятельно C++ за 21 день; М.: Вильямс - Москва, 2012. – с.64]

Вернемся к нашей задаче. Чтобы получить произведение n на m, используя операцию сложения, нужно просуммировать m слагаемых, равных n, т. е. вычислить

Но эта формула — не программа, хотя бы потому, что здесь есть неопределенность (например, многоточие),

Решение этой задачи можно представить как последовательность выполнения следующих простых шагов;

Положить k = 0.

Далее выполнить операцию

k = k + n

m раз. При этом после каждого выполнения указанной операции значение k увеличивается на n. В итоге в k будет получен результат решения задачи.

Чтобы выполнить операцию требуемое число раз, нужно считать, сколько раз эта операция уже выполнена. Используем для этого вспомогательную переменную i. Назовем ее счетчиком. Перед первым прибавлением к k значения n положим i = 1 и после очередного изменения k. значение счетчика i будем менять на 1. [Дунаев, Вадим Web-программирование для всех; БХВ-Петербург - Москва, 2013. – с.78]

Тогда программа может быть записана так:

1. задать конкретные значения n, m

2. k = 0

3. i =1

4. k = k + n

5. i = i +1

6. если i m идти к 4. (Повторить выполнение операций, начиная с п. 4)


7. закончить вычисления

Пояснения к программе.

1. Программа написана на обычном языке человеческого общения с использованием общепринятой математической символики (это так называемый "естественный" язык).

2. Операторы 2, 3 задают начальные значения переменных k и i. В языках программирования предписание о выполнении некоторой операции (например, операции присваивания) называется оператором.

3. Оператор 4 при каждом своем выполнении увеличивает значение k на n. Оператор 5 увеличивает значение счетчика на 1 после того, как выполнено очередное сложение.

4. Оператор 6 проверяет условие i m, и если оно выполняется, т. е. не все m сложений еще выполнены, то происходит возврат к оператору 4 и повторное выполнение программы, начиная с оператора 4. Как только в процессе выполнения программы условие i m не будет выполнено, процесс вычислений заканчивается. Это произойдет, когда будет i > m, т. е. все нужные сложения выполнены.

Приведенная программа задает порядок действий, которые могут быть выполнены, когда n и m получат конкретные значения.

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

Значение каждого параметра хранения в определенном участке памяти компьютера и может меняться в процессе выполнения алгоритма. Такой участок памяти ПК компьютера называется переменной. [Доорс, Дж.; Рейблейн, А.Р.; Вадера, С. Пролог - язык программирования будущего; М.: Финансы и статистика - , 2011. – с.65]

Каждой переменной присваивается имя. С каждой переменной связан ее тип. С переменной можно выполнять следующие действия:

1) прочитать её текущее значение;

2) записать новое значение в переменную или как говорят присвоить новое значение переменной;

Запись нового значения переменной выполняется с помощью так называемого оператора присваивания. Имя_переменной = выражение; //здесь знак равенства это знак присвоения

При выполнении оператора присваивания сначала вычисляется значение выражения в правой части, затем оно записывается в переменную, имя которой указано в левой части. Старое значение переменной при этом стирается. [Гудман, Д. Java Script и DHTML. Сборник рецептов для профессионалов; СПб: Питер - Москва, 2013. – с.87]

1) Память — это материальный носитель, который хранит информацию. Эту информацию можно читать и перезаписывать. [Гудман, Д. Java Script и DHTML. Сборник рецептов для профессионалов; СПб: Питер - Москва, 2013. – с.89]


2) Переменная — это область памяти универсального исполнителя хранящая порцию информации. Любая переменная имеет имя и тип. Тип переменной определяется множеством всех значений, которые она может принимать. [Гудман, Д. Java Script и DHTML. Сборник рецептов для профессионалов; СПб: Питер - Москва, 2013. – с.90]

3) С переменной можно выполнять два действия: прочитать ее текущее значение и записать в нее значение (старое теряется). Для записи нового значения в переменную применяется оператор присваивания. [Гудман, Д. Java Script и DHTML. Сборник рецептов для профессионалов; СПб: Питер - Москва, 2013. – с.91]

Выражение в правой части может включать имя переменной в левой части. В этом случае при вычислении выражения используется старое значение переменной. Например, с численными переменными возможны арифметические операции, с логическими — проверка, истино или ложно значение переменной, с символьными — сравнение, с табличными (или массивами) чтение или запись элемента таблицы с заданным индексом и т.п.

Переменные:

-Логические

-Символьные

-Числовые

-Целые

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

-Одинарной точности

Двойной точности

Целочисленные переменные

Тип целое число является основным для любого алгоритмического языка. Символы представляются в компьютере целыми числами — их кодами в некоторой кодировке. Целая переменная в компьютере может хранить лишь ограниченное множество целых чисел в некотором интервале. В современном ПК под целую переменную отводится 8 байтов, т.е. 64 двоичных разряда. Она может хранить числа от нуля до 2 в 64-й степени минус 1. Таким образом, максимальное число которое может храниться в целочисленной переменной, равно 18,446,744,073,709,551,615 (18 квинтиллионов 446 квадриллионов 744 триллиона 073 миллиарда 709 миллионов 551 тысяча 615). [Дьяконов, В.П. Справочник по расчетам на микрокалькуляторах; М.: Наука. Главная редакция Физико-математической литературы - Москва, 2011. – с.98]

Сложение и умножение значений целых переменных выполняется так: сначала производится арифметическая операция, затем старшие разряды результата, вышедшие за 64 разрядов (отбрасываются). Операции удовлетворяют традиционным законам коммутативности, ассоциативности и дистрибутивности:

a + b = b + a , ab = ba

(a + b) + c = a + (b + c) , (ab)c = a(bc) a(b + c) = ab + ac

В языке С целым числам соответствуют типы int, char, bool

Представление целочисленных значений в памяти компьютера в большинстве случаев реализуется аппаратным способом с учетом возможностей конкретного процессора. [Дьяконов, В.П. Справочник по расчетам на микрокалькуляторах; М.: Наука. Главная редакция Физико-математической литературы - Москва, 2011. – с.110]