Символьные переменные
Опр: Символ - специальный рисунок (значок, иероглиф) используемый для изображения фрагмента (только части!) информации в письменной форме некоего языка (естественного, алгорифмического, программирования).
Определяющее свойство:Символ – базовый, т.е. неделимый и не упрощаемый, элемент письменного языка.
В памяти ЭВМ символы кодируются (номеруются) натуральными числами, а соответствующие пронумерованным символам рисунки содержатся в специальных справочниках - кодовых таблицах.
Стандартные таблицы типа ANSI содержат по 256 символов. Числовой код такого символа занимает ровно один байт памяти.
Поскольку, периферийные устройства ЭВМ (клавиатура, монитор и принтер) могут использовать разные таблицы ANSI, порядок расположения в них одних и тех же символов, должен быть обязательно согласован!
Расширенный стандарт кодирования UNICODE содержит 65536 символов. Код каждого символа из такой таблицы занимает ровно два байта памяти, т.е. описывается числами от 0 до 65535.
В кодовых таблицах символы условно упорядочены: буквы располагаются в алфавитном порядке, цифры по возрастанию. Обычно, в начале кодовой таблицы расположены специальные символы, далее цифры, за ними – заглавные буквы латинского алфавита, затем – строчные буквы латинского алфавита, затем – буквы кириллицы и т.д.
Тип символьных (литерных) переменных в языке Pascal именуется зарезервированным символом Char. Информационные объекты типа Char занимают в оперативной памяти ЭВМ ровно один байт.
Пример:Var a, b, cc: char;
Звуковая транскрипция оператора: создать в оперативной памяти переменные с именами a, b и cc для размещения в них информации типа Char.
Над литерными переменными не предусмотрены бинарные операции порождения. Фразы “сложить два символа” или “перемножить два символа” – бессмысленны.
Стандартная обработка литерных переменных, в языке Pascal, ограничена операциями: ввода-вывода, сравнения, присвоение и преобразование типа.
Опр. Символ, заключенный в простые кавычки, или натуральное число, которому предшествует специальный значок # (решетка), являются литерными константами.
Примеры записи и озвучания (семантики) операторов:
· сс:=а;{в переменную сс скопировать содержимое переменной а!}
· cc:=’?’; {в литерную переменную сс внести символ “?” ! }
· cc:=#98; {в переменную сс внести символ с числовым кодом 98! (напомню, что код 98 соответствует символу “b”)}.
Над переменными типа Char, которые упорядочены сообразно их числовым кодам, допустимы все операции сравнения: =, < >, >, >=, <, <=.
Например:‘a’ < ‘b’– поскольку числа 97<98 , а 97 и 98 – это коды (номера) символов “a” и “b”.
Консольный ввод символьных переменных реализуется стандартными процедурами Read и ReadLN.
Пример: Read (a, cc);
Семантика: внести в переменные a и cc коды символов, которые указанны на клавишах нажимаемых пользователем!
Если пользователь нажимает последовательно четыре следующие клавиши: <T> <Enter> <Q> <Enter>, то в переменную а будет помещен код символа ”T”, в переменную cc код символа “Q”. Курсор останется в той позиции экрана, где завершился процесс ввода, т.е. сразу за буквой Q.
Эту же информацию можно ввести последовательно нажимая три клавиши <T> <Q> <Enter>.
Типичная ошибка при вводе символьной информации – использование символа-пробела в качестве разделителя между другими «значимыми» символами: символ-пробел такой же значимый символ как и все прочие (его код 32), но он не имеет рисунка-иероглифа.
Для вывода на экран используются процедуры Write и WriteLN.
Пример: writeln (cc, a, cc:3);
Семантика:вывести (распечатать) на экран символы, коды которых содержатся в литерных переменных cc, a, cc, после печати курсор сместить в начало следующей строки экрана! Для вывода информации (содержимого) последней переменной отвести три позиции экрана.
Результат выполнения этого оператора: QT _ _ Q.
Преобразование типов переменных.
Получение числового кода (символа), т.е. порядкового номера символа в кодовой таблице.
Пример: Var i:byte;... i:=ord(‘a’);
Поскольку символ а зарегистрирован в кодовой таблице под номером 97, т. е. в переменную i будет помещено число 97.
Создание символьной переменной по заданному номеру в кодовой таблице.
Пример: a:=chr(107);
Поскольку под номером 107 в кодовой таблице зарегистрирован символ “k”,то в переменную а будет помещен символ именно символ буквы k.
Литерные переменные являются базовыми элементами для образования сложно структурированных символьных переменных: слов, предложений и текстов.
Дата добавления: 2021-12-14; просмотров: 284;