Файл: Понятие переменной в программировании. Виды и типы переменных (КРАТКИЙ ОБЗОР И КЛАССИФИКАЦИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ).pdf
Добавлен: 30.03.2023
Просмотров: 214
Скачиваний: 1
СОДЕРЖАНИЕ
1. КРАТКИЙ ОБЗОР И КЛАССИФИКАЦИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ
1.1 Классификация языков рпограммирования
1.2 Связи алгоритма и языка программирования
2. ПОНЯТИЕ ПЕРЕМЕННОЙ В РАЗЛИЧНЫХ ЯЗЫКАХ ПРОГРАММИРОВАНИЯ
2.1 Виды и типы переменных в языке Паскаль
2.2 Виды и типы переменных в языке Visual Basic
Более понятным программистам, чем машинный код, является специальный код — код ассемблера. Он записывается в виде мне-моник. Каждая команда представляет собой мнемоническую запись. Иногда системные программы пишут на ассемблере, а потом переводят в машинный код — ассемблирование, или наоборот, чтобы легче было читать программу, выполняют дисассемблирование: й
До 1980-х годов компьютеры использовались для математических и технических расчетов и действий с экономической информацией. Для этих задач разработаны проблемно-ориентированныенные языки программирования. Дальнейшее развитие языков привело их более универсальными, позволяющими составлять программы для любых информационных действий, управления печатью, рисования чертежей, воспроизведения звуков и т. д.
2. ПОНЯТИЕ ПЕРЕМЕННОЙ В РАЗЛИЧНЫХ ЯЗЫКАХ ПРОГРАММИРОВАНИЯ
Язык программирования должен иметь алфавит, синтаксис и семантику. Правила, определяющие структуру текста, составляют синтаксис. Правила, позволяющие извлекать смысл теста называются семантикой языка. Для описания синтаксиса языка используется метаязык (язык для описания языка). В качестве метаязыка используют либо металингвистические формулы Бэкуса—Наура, либо синтаксические диаграммы. Джон Бэкус разработал специальную систему определений для языков программирования. Датский астроном П. Наур внес некоторые уточнения, и форму стали называть формой Бэкуса—Наура. В формуле каждое понятие определяется с помощью одной ме-талингвистической формулы, в левой части которой указываются определяемые понятия, а в правой — описываются все допустимые структуры языка, соответствующие этому понятию. Левая и правая части формулы связываются знаком ::=, который читается «по определению есть». При перечислении дополнительных вариантов структур в правой части используется знак|, имеющий смысл «или». Все определяемые понятия языка программи¬рования заключаются в угловые скобки < >, а неопределяемые исходные понятия языка называются лексемами. Лексемы могут использоваться в правой части формулы [2].
Для определления понятия <целое число>, если алфавит языка программирования включает арабские цифры и знаки арифметических операций. Сначала определим понятие <цифра>. Понятие <целое без знака>, может быть записано следующей формулой:
<целое без знака> ::= <цифра> | <целое без знака> <цифра>
Это равносильно определению «любая последовательность цифр». Формула рекурсивна, так как <целое без знака> уже встречается в правой части, т. е. имеется ссылка на само себя. Теперь выведем формулу:
<целое число> ::= <целое без знака> | -<целое без знака> || +<целое без знака>.
Полученная цепочка из трех формул определяет понятие <целое число> через лексемы языка 0, 1, ... , 9, +, –
С помощью металингвистических формул могут быть описаны все понятия языка программирования. Синтаксическая правильность текста проверяется в процессе его синтаксического анализа на основе металингвистических формул.Способ описания синтаксиса на основе диаграмм основан н тех же принципах.
Синтаксические диаграммы графически изображают допустимую структуру определяемого понятия. Следование элементов структуры задается стрелками, вариантность указывается как распараллеливание направлений следования. Лексемы изображают в виде кружка или овала, а определяемое понятие — в виде прямоугольника. Диаграмма имеет одну входную и одну выходную стрелки.
2.1 Виды и типы переменных в языке Паскаль
Любая переменная, объявленная в языке программирования, принадлежит к некоторому типу данных. Тип данных опеределяет:
- какие значения может принимать элемент данных этого типа;
- какие операции допустимы над этим элементом данных.
Типы данных в языке Паскаль делятся на скалярные и структурные. Элемент данных структурного типа объединяет в себе несколько других элементов, элемент скалярного типа является неделимым. К основным скалярным типам данных относятся INTEGER, REAL, CHAR, BOOLEAN.
Тип INTEGER – представляет собой тип целых чисел. Переменные этого типа записываются в виде чисел со знаком или без него, например: 5, -120, 0, 6.
Переменные должны быть обязательно объявлены в программе. Для этого используется ключевое слово VAR. Группа целых чисел в языке Паскль представлена в таблице 1.
Таблица 1 – Целочисленные типы в языке Паскаль
|
Тип |
Область допустимых значений |
|
INTEGER |
-32768…32767 |
|
SHORTINT |
-128…127 |
|
LONGINT |
-2147483648….2147483647 |
|
WORD |
0…65535 |
|
BYTE |
0…255 |
Тип REAL называется также вещественным типом или типом с плавающей точкой. Элементы этого типа – действительные числа, которые храняться в памяти компьютера в формате с плавающей точкой. Вещественные числа так же требуют описания перед использованием. Примерами вещественных числе являются 12.3, -6.5, 154,65. Группа действительных чисел в Паскале представлена в таблице 2.
Таблица 2 – Числа с плавающей точкой в языке Паскаль
|
Тип |
Область допустимых значений |
Количество цифр после запятой |
|
REAL |
11–12 |
|
|
SINGLE |
7–8 |
|
|
DOUBLE |
15–16 |
|
|
EXTENDED |
19–20 |
|
|
COMP |
19–20 |
Тип данных BOOLEAN – логический имеет два значения – TRUE –истина и FALSE – ложь. Данный тип так же требует обявления пермененной перед использованием.
Тип данных CHAR – символьный предназначен для обработки нечисловой инфорации – строк или отдельных символов текста. Его значениями являются отдлельные символы или строки текста. Для объявления переменной данного типа используется ключевое слово CHAR.
Далее представлены несколько примеров с различными типами данных. На рисунке 1 показано, что переменной A, имеющей целочисленный тип в процессе выполнения программы присваивается значение числа с плавающей точкой, что является недопустимым. Обратное присваивание – допустимо (рисунок 2).
Рисунок 1 – Неверный выбор типа данных
Рисунок 2 – Присваивание целочисленного значения
переменной с плавающей точкой.
В случае выхода значения переменной за границы диапазона, результат может быть нерпредсказуемы.
Над перменными могут выполняться различные математическае операции, при этот точность зависит от типа выбранной переменной. Наибольшей точностью обладает тип CURRENCY, который предназначен для создания бухгалтерских и финансовых программ и минимизирует ошибки округления.
Над переменными типа BOOLEAN могут выполняться логические операции. Примеры представлены на рисунке 3.
Рисунок 3 – Логические операции
Кроме скалярных типов данных, в языке существуют и векторные, а так же многомерные типы, но общий принцип работы с переменными данных типов остается неизменным.
2.2 Виды и типы переменных в языке Visual Basic
Язык Visual Basic представляет собой мощное средство разработки программ для операционной системы Windows с поддержкой большиства современных требований, таких, как базы данных, элементы управления, работа с сетью и др. Как и в рассмотренном в предыдущем разделе языке Паскаль, язык Visual Basic требует, чтобы, чтобы переменная перед использованием была описана. Внешний вид среды разработки представлен на рисунке 4
Рисунок 4 – Среда раработки Visual Basic
Переменная представляет собой именованную ячейку памяти, в которой хранится некоторое значение, которое может меняться в процессе выполнения программы. Если при начальном задании переменной не указан её тип, то VB присваивает ей универсальный тип, т.е. такой тип, который может содержать как числовые, так и нечисловые данные. Паскль такого не допускает. Для иллюстрации представим простую программу:
Dim A
Private Sub Form_Load()
A = "H"
MsgBox (A)
End Sub
В данной программе задается переменная A, у которой не указано значение. Далее ей присваивается символьная строка «H», и затем значение выводится во всплывающем сообщении (рисунок 5).
Рис. 5 – Результат работы программы
Если указать тип данных, то результат выполнения будет другой (рисунок 6).
Рисунок 6 – Результат при неверном здании типа
В данном случае производится попытка присваивание целочисленной пермененной значения строкового типа, что приводит к ошибке несоответствия типов.
Как и в языке Паскаль, в VB существует несколько типов числовых данных и при программировании очень важно выбирать правильный тип. Приведём примеры типов числовых данных в языке VB (таблица 3).
Таблица 3 – Типы данных в языке VB
|
Тип данных |
Описание |
Диапазон допустимых значений |
|
BYTE |
Однобайтовое целое число |
0…255 |
|
BOOLEAN |
Логический тип |
TRUE, FALSE |
|
INTEGER |
Целочисленный тип |
-32768…32767 |
|
LONG |
Длинное целое |
-2147483648…2147483647 |
|
CYRRENCY |
Число с фиксированной точкой |
922337203685477,5808… 922337203685477,5807 |
|
SINGLE |
Число с плавающей точкой |
-4028235E E + 38 до-1.401298 E-45 для отрицательных значений и от 1.401298 E-45 до 4028235E E + 38 |
|
DOUBLE |
Число с плавающей точкой двойной точности |
-1.79769313486231570 E + 308 до-4.94065645841246544 E-324 для отрицательных значений и от 4.94065645841246544 E-324 до 1.79769313486231570 E + 308 |
|
DECIMAL |
Масштабируемое целое число |
+/-79,228,162,514,264,337,593,543,950,335 (+/-7.9228162514264337593543950335E + 28). С 28 десятичными разрядами максимальное значение — +/-7.9228162514264337593543950335, а наименьшее ненулевое значение — +/-0,0000000000000000000000000001 (+/-1E-28). |
В случае, если значение выходит за указанный тип данных, то возникает переполнение (рисунок 7), что демонстрирует простая программа, приведённая ниже:
Dim A As Integer
Private Sub Form_Load()
A = 32767
MsgBox (A + 1)
End Sub
Рисунок 7 – Переполнение.
Операции с типом данных BOOLEAN выполняются аналогично другим языкам. Пример программы и вывод результатов (рисунок 8):
Dim A As Boolean
Dim B As Boolean
Private Sub Command1_Click()
A = True
B = True
Print "A=", A
Print "B=", B
Print "A AND B", A And B
Print "A OR B", A Or B
A = False
B = True
Print "A=", A
Print "B=", B
Print "A AND B", A And B
Print "A OR B", A Or B
End Sub
Рисунок 8 – Выполнение логических функций.
Так как язык Visual Basic предназначен для создания программ под ОС Windows, в нём имеется больше типов данных и средств их преобразования.
2.3 Виды и типы переменных в языке C#
В языке C# существуют две разновидности типов: ссылочные типы , в которых хранятся ссылки на нужные данные (объекты) и типы значений, которые содержат данные. Приведем примеры типов значений:
Простые типы
Целочисленный со знаком: sbyte, short, int,long
Целочисленный без знака: byte, ushort, uint,ulong
Символы Юникода: char
Бинарный оператор IEEE с плавающей запятой: float, double
Десятичное значение с повышенной точностью и плавающей запятой: decimal
Логическое значение: bool
Тип bool в C# используется для представления логических значений, которые могут иметь значение true или false.
Обработка знаков и строк в C# выполняется в кодировке Юникода. Тип char представляет элемент в кодировке UTF-16, а тип string представляет последовательность элементов в кодировке UTF-16.
Программы C# используют объявления типов для создания новых типов. В объявлении типа указываются имя и члены нового типа. Пять категорий типов в C# определяются пользователем: типы классов, типы структур, типы интерфейсов, типы перечисления и типы делегатов.
C# поддерживает одно- и многомерные массивы любого типа. В отличие от перечисленных выше типов, типы массивов не требуется объявлять перед использованием. Типы массивов можно сформировать, просто введя квадратные скобки после имени типа. Например, int[] является одномерным массивом значений типа int, а int[,] — двумерным массивом значений типа int, тогда как int[][] представляет собой одномерный массив одномерных массивов значений типа int.