Символьные типы данных

Символьный тип Char – представляет собой тип данных, предназначенный для хранения одного символа (буквы, знака или кода). В переменную этого типа может быть помещен любой из 256 символов расширенного кода ASC II. Это буквы ['A'…'Z', 'a'…'z'], ['А'…'Я', 'а'…'я'], цифры ['0'…'9'], знаки препинания и специальные символы. Переменная типа Char в памяти занимает один байт. Этот тип обладает некоторыми особенностями.

В разделе описаний переменных объявляется следующим образом:

Var

сh:char или ch, cb, al:char;

Обычно значения переменных типа Char задаются в апострофах.

Например:

Var

сh:char;

Begin

сh: = 'A';

writeln(ch);

End.

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

Например:

Var

сh:char;

Begin

for сh: = 'a' to 'z' do writeln(ch);

End.

Или

for сh: = 'z' downto 'a' do writeln(ch);

Компьютер воспринимает нажатие клавиш в виде ASC II кода. В Турбо Паскаль предусмотрена работа с символьными типами данных в виде ASC II кода. Для этого перед числом, обозначающим код ASC II нужно поставить знак #.

Таблица ASC II кода.

Код Клавиша или комбинация клавиш Код Клавиша или комбинация клавиш
Алфавитно-цифровые клавиши
  Backspace (Забой)   Tab (Табуляция)
  Enter   Пробел
  !   ''
  #   $
  %   &
  '   (
  )   *
  +   ,
    .
  / 48…57 0…9
  :   ;
  <   =
  >   ?
  @ 65…90 A…Z
  [   \
  ]    
  _    
97…122 A…z   {
  |   }
  ~ 128…159 А…Я
160…175 A…п 224…239 р…я
Управляющие клавиши и их сочетания со сдвиговыми
  Ctrl – 2   Shift-Tab
16…25 Alt – Q…Alt – P (верхний ряд букв) 30…38 Alt – A…Alt – L (средний ряд букв)
044…50 Alt – Z…Alt – M (нижний ряд букв) 59…68 F1 – F10
  Home   Курсор вверх
  RgUp   Курсор влево
  Курсор вправо   End
  Курсор вниз   PgDn
  Ins   Del
84…93 Shift – F1…Shift – F10 94…103 Ctrl – F1…Ctrl – F10
104…113 Alt – F1…Alt – F10   Ctrl – PrtScr
  Ctrl – курсор влево   Ctrl – курсор вправо
  Ctrl – End   Ctrl – PgDn
  Ctrl – Home 120…131 Alt – 1…Alt – = (верхний ряд клавиш)
  Ctrl – PgUp    

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

Var

сh:char;

Begin

…………..

writeln('Введите символ'):

readln(ch):

End.

К типу Char определены операции отношения.

Например.

Var

Сh, сl:char;

Begin

…………..

ch: ='a';

cl: ='b';

if ch < cl then

writeln(ch, '_', cl)

else

writeln(cl, '_', ch);

………………….

End.

В данном случае будет выведена надпись а - b, поскольку b>a, вернее больше ее ASC II код. В операциях отношения сравниваются именно ASC II коды.

Пример:

Программа, выводящая на экран последовательность букв вида:

a

a b

a b c

.....

a b c... x y z

Program aab;

Var

C, d: char;

Begin

for c:='a' to 'z' do

begin

For d:='a' to 'c' do

write(d, ' ');

writeln;

end;

End.

Пример:

Программа, подсчитывающая число пробелов в последовательности вводимых символов.

Program summprob;

Var

Ch: char;

x, n: integer;

Begin

n:=0;

read(ch);

while ch<>#13 do

begin

if c=#32 then n:=n+1;

read(ch);

end;

write('Число пробелов равно',n);

End.

К типу Char применимы следующие встроенные функции.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: