Файл: Понятие переменной в программировании. Виды и типы переменных.pdf
Добавлен: 06.04.2023
Просмотров: 161
Скачиваний: 2
Приватная область видимости означает, что имя доступно исключительно внутри методов своего класса.
Защищённая область видимости означает, что имя доступно исключительно внутри данного класса и классов-потомков.
Общая область видимости означает, что имя доступно исключительно в границе видимости, к которой подразделяется его класс.
2.1 Способы задания области видимости
Область видимости переменной может зависеть только от двух нераздельных пунктов:
- места объявления переменной;
- ключевого слова, использованного во время объявления переменной.
В том случае, когда переменная была объявлена в самой процедуре, с использованием триггерного слова “Dim”, она может быть использована исключительно внутри данной процедуры.
В простых случаях область видимости возможно определить с помощью назначения идентификатора, а когда место объявления нельзя определенно задать область видимости, используют дополнительные уточнения.
Идентификатор, объявленный за границей определения функции, процедуры, типа, называется глобальным.
Идентификатор, объявленный внутри границ определения функции, является локальным в этой самой функции. Это значит, что областью видимости, которой он обладает назначается эта функция.
Идентификатор, являющийся частью выяснения типа данных, в отсутствие специальных уточнений, поддерживает такую же область видимости, как и идентификатор типа, в разъяснение которого он входит.
В языках, использующих модули, пакеты или пространства имён идентификатор, назначенный вне всех процедур и классов, по стандарту имеет отношение к модулю, пакету или пространству имён, внутри, где находится его объявление. Пределы области видимости для пакета или пространства имён задаются с помощью определенных описаний, а модульная область видимости заканчивается данным на текущий момент файлом начального текста программы. Этот тип видимости отличим тем, что язык обычно включает средства, дающее возможность создать идентификатор открытым и вне своего пространства имён, то есть сделать его область видимости более обширным. Для этого нужно выполнение двух пунктов: содержащий идентификатор, модуль должен быть перенесен с помощью заранее сформулированной команды там, где нужно его использование, при этом сам идентификатор при его характеристике должен быть дополнительно объявлен переносимым. Возможности объявления идентификатора переносимым могут различаться. Это могут быть дополнительные команды или модификаторы в описаниях, соглашения об именовании. В некоторых языках все модули (пакеты) специально разделяется на два раздела: определений и реализации, которые будут располагаться как в пределах единственного файла исходного кода, так и в различных; переносимыми могут быть идентификаторы, объявленные в модуле определений.
Область видимости идентификатора, объявленная в ООП-классе, по стандарту будет приватной, или общей. Другая область видимости создается с помощью дополнительного описания.
Данный перечень не заканчивается всеми нюансами определения области видимости, которые имеются в данном языке. Так, например, можно записать разные объяснения связки модульной области видимости и объявленной видимости членов ООП-класса. В некоторых языках программирования (например, C++) объявление личной или защищённой области видимости для члена класса закрывает доступ к нему для всех кодов, не имеющих отношения к методам своего класса. В других (Оbject Pascal) все члены класса, а также личные и защищённые, полностью открыты в пределах данного модуля, в котором объявлен класс, а ограничения области видимости действуют только в модулях, переносящих данные.
Глава 3. Арифметические операции
Инкремент – это операция, которая содержится в некоторых языках программирования. Ее задача в увеличении основной переменной на одну единицу, если переменная имеет символьное значение, то ставит следующий символ исходя из символьной таблицы.
Операторы инкремента имеют вид, как два плюса: ++
Декремент – это похожая на инкремент операция, за исключением того, что работает совершенно наоборот, вместо прибавления значения переменной, отнимает на один назад. Декремент выглядит как два минуса: – –.
Вот список всех бинарных вычислений, который расположен в порядке снижения приоритета:
* — умножение;
- / — деление;
- + — сложение;
- — — вычитание;
- % — остаток от целочисленного деления.
Основные унарные операции:
- ++ — инкрементирование (увеличение на 1);
- –– — декрементирование (уменьшение на 1);
- — — изменение знака.
Например,
x = 3, переменной x будет присвоено значение 3
y = x + 5, к значению x, прибавить 5,
получившаяся сумма будет в переменной y
z = x * y; перемножить x и y,
получившиеся значение будет в переменной z
z = z - 1; отнять от значения z, 1
получившуюся разницу записать в переменную z
С помощью такого способа можно почитать, что переменная z будет ровняться 23.
Например,
x++; в этом случае значение x увеличится на 1.
Декремент – это операция в которой будет уменьшено значение, находящиеся в переменной, на 1.
Например,
x--; в этом случае значение x уменьшится на 1.
Инкремент и декремент подходят для операций присваивания. В тот момент, когда используется декремент и инкремент вместе с оператором "=" применяется постфиксная (x++) или префиксная (++x) запись. Сначала выполняется префиксная запись.
Например,
y = x++;
Если, в переменной x находилось значение 5. То в y будет записано значение 5, после этого действия переменная x увеличится на 1. Таким образом, в y будет 5, а в x - 6.
y = --x;
В том случае, когда в x было записано значение 5, то в начале будет совершено уменьшение x до 4, а только после этого, значение присвоится y. Таким образом, x и y будет присвоено значение 4.
3.1 Объявление переменных
Переменные объявляют в операторе описания. Оператор описания создан из спецификации типа и списка всех имён переменных, которые разделены запятой. В конце строго будет находится точка с запятой.
Объявление переменной будет выглядеть так:
[модификаторы] спецификатор типа
идентификатор [, идентификатор] ...
Модификаторы - основные слова: signed, unsigned, shоrt, lоng.
Спецификатор типа - ключевое слово char или int, которое выявляет тип объявляемой переменной.
Идентификатор - имя переменной.
Пример:
char x;
int a, b, c;
unsigned lоng lоng y;
С помощью данного выражения, будут объявлены переменные x, a, b, c, y. В переменную x мы в состоянии поместить от -128 до 127. В переменные a, b, c - от -32768 до 32767. А в переменную y - от 0 до 18446744073709551615.
При объявлении переменной мы можем присвоить начальное значение. Данный пример покажет, как это сделать.
int x = 100;
Таким образом, Число 100 будет сразу помещено в переменную x при ее объявлении.
При возможности нужно уходить от смешивания инициализируемых переменных в каком-то одном операторе описания, то есть такие переменные нужно объявить в раздельных строках.
С определенными переменными можно сделать достаточно мало. Основной частью работы над переменной служит определение. Следующим этапом действия активируется идентификатор этой переменной в вычислительные операции. Для успешного компилятора не будет трудной задачей одновременно обрабатывать части аппаратной реализации, но также испытывать разные варианты оптимизации кода, при этом имея скорость выполнения программы. Переполнение является всесторонней ошибкой, которую допускают при использовании переменных. Это имеет прямое отношение к той ситуации, в которой значение, той переменной которая присвоена, будем иметь место вне числового диапазона, который должен быть связан с типом данных этой переменной. Во время такой работы нужно продумать о всех вариантах, которые как-либо связаны с этой переменной и подобрать тот тип данных, который идеально к ней подойдет.
3.2 Константы
Константы имеют одно основное преимущество. Их описание идет в начале программы и сразу присваивается значение, но при выполнении программы, константа не поменяется. Если же появилась необходимость изменить значение константы, то значение будет вписываться в описание этой константы и таким образом, не придется тратить время на редактирование кода.
Переменная разного типа может быть объявлена как не улучшаемая. Это приходит с добавлением главного слова cоnst к спецификатору типа. Переменные с таким типом воплощают из себя данные, которые используются для чтения, без возможности присваивания нового значения. В случае, когда после слова cоnst не находится спецификатор типа, то в этом случае константы будут рассматриваться как величины со знаком, и им будет приписан тип int или lоng int, смотря какое значение имеет константа: в том случае, если константа имеет значение меньше 32768, то ей приписывается тип int, в ином случае lоng int.
Например,
cоnst lоng int k = 25;
cоnst m = -50; // подразумевается cоnst int m=-50
cоnst n = 100000; // подразумевается cоnst lоng int n=100000
Для того чтобы присвоить значение в Си существует знак “=”. Выражение, которое находится по правой стороне от этого знака присваивания, вычисляется, и получившиеся значение присваивается переменной, которая стоит по левую сторону от знака” =”. Так же прошлое значение, которое находится в этой переменной удаляется и меняется на новое. Оператор присваивания не воспринимается как равенство.
Например, такое выражение как: a = 5; будет читаться как присвоить переменной a значение 5".
x = 5 + 3; сложить значения 5 и 3,
результат присвоить переменной x
b = a + 4; прибавить 4 к значению, хранящемуся в переменной a,
посчитанное число присвоить переменной b
b = b + 2; // прибавить 2 к значению, хранящемуся в переменной b,
// полученный результат присвоить переменной b
В правой части значение переменной можно использоваться несколько раз: c = b * b + 3 * b.
Помимо обычного оператора "=", в системе Си, так же создано еще комбинированные операторы присваивания, такие как: "+=", "-=", "*=<", "/=", "%=".
Например,
x += y; // то же, что и x = x + y; - сложить x и y,
результат поместить в переменную x
x -= y; то же, что и x = x - y; - отнять от x значение y,
результат поместить в переменную x
x *= y; то же, что и x = x * y; - умножить x на y,
результат поместить в переменную x
x /= y; то же, что и x = x / y; - разделить x на y,
результат поместить в переменную x
x %= y; то же, что и x = x % y;
посчитать цельный остаток после деления x на y
результат поместить в переменную x.
Заключение
В данном курсовом проекте была рассмотрена как теоретическая с практической части работы, так и арифметическая. Из этой информации можно сложить общее и углубленное понятие о том, что такое переменная, её основные типы, виды.
Из выше перечисленной информации можно узнать, как работать с переменными более увереннее и надежнее, не озадачивая себя так, как без этих знаний, исключая рутинную работу.
Так же было рассмотрено несколько вариантов применения в разных средах и для разных задач, учитывая всевозможные условия и сопутствующие параметры.
Плюсы и минусы в работе могут рассказать и подготовить будущего программиста к всевозможным задачам, он уже заранее будет знать, что делать в той или иной ситуации и что при этом получится в итоговой правке.
Так же присутствовало описание и правила работы с другими относящимися к переменной понятиями в программировании. Которые помогут расширить кругозор в этой теме, предоставляя большее свободное информационное пространство.
Данная работа должна дать определенные знания в области программирования переменной, а в подвидах и типах рассказать о полной работе над ними, как в связке, так и по отдельности, подготовить программиста к работе, используя данную информацию и наглядные примеры арифметических операций. В данной работе были приведены труды известных авторов книг и собраний по программированию. Без их помощи, тема переменных была бы более сложной в раскрытии.
Список источников
- Automate the Boring Stuff with Python - Аль Свейгарт
- Основы программирования. Учебник и практикум для прикладного бакалавриата - Черпаков Игорь Владимирович
- Практическое использование Common Lisp - Сайбель П.
- Совершенный код: Практическое руководство по разработке программного обеспечения - Макконнелл С.
- Технологии и методы программирования - Н.В. Анашкина, Н.Н. Петухова, В.Ю. Смольянинов.
-
Единица хранения и обработки цифровой информации. В современных вычислительных системах байт состоит из 8 бит и, соответственно, может принимать одно из 256 различных значений. ↑
-
Устройство для записи, хранения и считывания n-разрядных двоичных данных и выполнения других операций над ними. ↑
-
Минимальный адресуемый элемент запоминающего устройства ЭВМ. ↑
-
строка символов, которая отличает ее от других переменных и объектов программы (элементов управления). ↑
-
Это те данные, которые в настоящий момент присутствуют в переменной. ↑
-
Они записаны в разделе описаний и не могут меняться во время выполнения программы. ↑
-
Работа с объектами осуществляется с помощью конструкций языка; внутреннее представление значений объектов может зависеть от реализации транслятора и от платформы; ↑
-
Типы компонент образуются из других типов (простых, структурированных). ↑
-
Массив – строение данных, где находятся некоторые элементы массива, которые размеченных по заданному числу или набору заданных чисел, которые могут принимать целые значения из неопределенно заданного не имеющего конца диапазона. ↑
-
Двоичный код другой операции из компиляции команд машины. ↑
-
Ассемблер-передатчик начального текста программы, перенесенного с языка ассемблера, в программу на компьютерном языке. ↑
-
Макрос – это алгоритм программных действий, который записан программистом. В большинстве случаев, их, чтобы не заниматься простыми и рутинными задачами. ↑
-
Язык обработки списков; современное - Lisp - вид языков для программирования, а также данные в которых являющиеся системами линейных списков. Он был разработан Джоном Маккарти, чтобы облегчить труды с ИИ и по сей день он остался одним из главных инструментальных средств в этой области. ↑
-
Область видимости определяет, есть ли у вас доступ к переменной в данном контексте выполнения ↑
-
Статические переменные являются долговременными переменными, существующими на протяжении функции или файла. ↑
-
Динамическая переменная — переменная в программе, место в оперативной памяти под которую выделяется во время выполнения программы. ↑
-
Абстрактный тип данных, представляющий собой список элементов, организованных по принципу LIFO. ↑
-
это специализированная структура данных типа дерево, которая удовлетворяет свойству кучи: если B является узлом-потомком узла A, то ключ A ≥ ключ B. Из этого следует, что элемент с наибольшим ключом всегда является корневым узлом кучи, поэтому иногда такие кучи называют max-кучами ↑
-
Никлаус Вирт - швейцарский учёный, специалист в области информатики, один из известнейших теоретиков в области разработки языков программирования, профессор компьютерных наук Швейцарской высшей технической школы Цюриха, лауреат премии Тьюринга 1984 года.
Родился: 15 февраля 1934 г. Винтертур, Швейцария ↑
-
Это программирование как моделирование информационных объектов, служащий для решения на следующем уровне главную задачу структурного программирования: структурирование информации с точки зрения управляемости. ↑
-
Инкапсуляция - способность системы, разрешающее слить в единое целое данные и способы, работающие с ними, в классе. Одни языки характеризуют инкапсуляцию с укрытием, а другие разграничивают такие понятия. ↑
-
Наследование - способность системы, дающее ей способность рассказать о новом классе на базе уже созданного с заимствующимися свойствами. Класс, который производит наследование, назван базовым, родительским или суперклассом. Новый класс - потомком, наследником, дочерним или производным классом. ↑
-
Название ряда языков программирования, применяемых при составлении программ для решения научно-технических задач на ЭВМ. ↑
-
Считывает все символы до (но не включая) следующего маркера конца строки или пока Eof(F) станет равным True. ↑
-
Служит для вывода на экран каких-либо данных. ↑