Информатика. Курс лекций. Громов Ю.Ю - 115 стр.

UptoLike

Для решения подобных проблем языки программирования позволяют давать описательные имена конкретным постоян-
ным величинам. Такое имя называется именованной константой или просто константой (constant). Например, рассмотрим
следующий оператор объявления языка Pascal:
const AirportAlt = 645;
Этот оператор связывает идентификатор AirportAlt с фиксированным значением, равным 645. Аналогичные дейст-
вия в языке Java записываются в виде следующего оператора:
final int AirportAlt = 645;
В результате подобного объявления имя AirportAlt можно будет использовать вместо литерала 645. Используя та-
кую константу в нашем псевдокоде, мы можем переписать оператор
EffectiveAlt Altimeter + 645
в виде
EffectiveAlt Altimeter + AirportAlt.
Последний вариант лучше представляет смысл программы. Кроме того, если в программе вместо литералов использу-
ются подобные именованные константы и эту программу потребуется перенести в другой аэропорт, расположенный на вы-
соте 267 футов над уровнем моря, то все, что нужно сделать, для того чтобы присвоить всем ссылкам на высоту аэропорта
новые значения, – это изменить одно-единственное объявление следующим образом:
const AirportAlt = 267;
Типы данных. Операторы объявления, с помощью которых данным присваиваются имена, обычно одновременно оп-
ределяют и их тип. Тип данных (data type) определяет как область допустимых значений, так и операции, которые можно с
ними выполнять. К основным типам данных относятся integer (целый), real (действительный), character (символьный) и Boo-
lean (логический, или булев). Тип integer используется для обозначения числовых данных, являющихся целыми числами. В
памяти они чаще всего представляются с помощью двоичной нотации с дополнением. С данными типа integer можно выпол-
нять обычные арифметические операции и операции сравнения. Тип real предназначен для представления числовых данных,
которые могут содержать нецелые величины. В памяти они обычно хранятся как двоичные числа с плавающей точкой. Опе-
рации, которые можно выполнять с данными типа real, аналогичны операциям, выполняемым с данными типа integer. Одна-
ко заметим, что манипуляции, которые следует выполнить, чтобы сложить два элемента данных типа real, отличаются от
манипуляций, необходимых для выполнения аналогичных действий с переменными типа integer.
Тип character используется для данных, состоящих из символов, которые хранятся в памяти в виде кодов ASCII или
UNICODE. Данные этого типа можно сравнивать друг с другом (определять, какой из двух символов предшествует другому
в алфавитном порядке); проверять, является ли одна строка символов частью другой, а также объединять две строки в одну,
более длинную строку, дописывая одну из них после другой (операция конкатенации).
Тип Boolean относится к данным, которые могут принимать только два значения: true (истина) и false (ложь). Примером
таких данных может служить результат выполнения операции сравнения двух чисел. Операции с данными типа Boolean
включают проверку, является ли текущее значение переменной true или false.
Другие типы данных, которым пока не соответствуют какие-либо общепринятые элементарные конструкции в основных
языках программирования, – это аудио- и видеоданные. Встроенные средства для обработки таких данных имеются в среде про-
граммирования языка Java.
В большинстве языков программирования требуется, чтобы операторы объявления не только вводили новую перемен-
ную в программу, но и определяли ее тип. На рис. 5.4 приведены примеры таких объявлений в языках Pascal, С, C++, Java и
FORTRAN. В каждом случае переменным Length и Width присвоен тип real, а переменным Price, Tax и Totalтип
integer. Обратите внимание, что в языках С, C++ и Java для ссылки на тип данных real используется ключевое слово float,
поскольку данные этого типа представляются в машине как числа с плавающей точкой.
В разделе 5.5 мы увидим, как транслятор использует сведения о типах данных при переводе программы с языка высоко-
го уровня на машинный. Заметим, что эту информацию можно использовать и для обнаружения ошибок. Например, попытка
сложить два значения типа character или выполнить операцию, манипулирующую данными разных типов, может вызвать у
транслятора подозрение.
Структура данных. Другим понятием, связанным с операторами объявления, является структура данных (data struc-
ture), определяющая общую форму представления данных. Например, текст обычно рассматривается как длинная строка
символов, тогда как информация о продажах может рассматриваться как прямоугольная таблица с числовыми значениями,
каждое из которых представляет число сделок, заключенных определенным работником в определенный день.
Описание переменных в
языке Pascal
var
Length, Width: real;
Price, Tax, Total: in
teger;
Symbol: char;
Описание переменных в
языках C, C++ и Java
float Length, Width;
int Price, Tax, Total;
char Symbol;
Описание переменных в
языке FORTRAN
REAL Length, Width
INTEGER Price, Tax, Total
CHARAKTER Symbol