Лекция: Символьний тип даних

Символьний тип даних, як і цілий та логічний, відноситься до порядкових типів. Дані символьного типу описуються за допо­могою ідентифікатора Char.

Значенням змінної символьного типу може бути будь-який символ – букви, цифри, розділові знаки та спеціальні символи. Кожному символу відповідає унікальний числовий код від 0 до 255.

Найпоширенішою міжнародною системою кодування симво­лів є система ASCII – Американський стандартний код для обміну інформацією. Символи з кодами від 0 до 127 утворюють основну таблицю кодівASCII, серед яких коди від 0 до 31 – службові. Основна таблиця кодів однакова на всіх IBM-сумісних комп’ютерах. Символи з кодами від 128 до 255 утворюють, так звану, національну кодову таблицю. Саме в ній розташовуються, наприклад, українські букви.

Таблиця кодів ASCII:

  ! " # $
% & ' ( )
* + , .
/
: ; < =
> ? @ A B
C D E F G
H I J K L
M N O P Q
R S T U V
W X Y Z [
\ ] ^ _ `
a b c d e
f g H i j
k l M n o
p q R s t
u v W x y
z { | } ~
 Ђ Ѓ ѓ
Љ Њ Ќ
Ћ Џ Ђ
? Љ њ
ќ ћ Џ   Ў
ў Ј ¤ Ґ ¦
§ Ё © Є «
  ­ ® Ї °
± І І ґ µ
· Ё є
» ј Ѕ ѕ ї
А Б В Г Д
Е Ж З И Й
К Л М Н О
П Р С Т У
Ф Х Ц Ч Ш
Щ Ъ Ы Ь Э
Ю Я А б в
г д Е ж з
и й К л м
н о П р с
т у Ф х ц
ч ш Щ ъ ы
ь э Ю я    

До символьних даних застосовують операції порівняння. Операція порівняння здійснюється таким способом: з двох символів «менший» той, який зустрічається у таблиці ASCII раніше.

Значення для змінних типу Char задаються в апострофах: ch:='*'; a:='3'; letter:='G'. Функція Chr(x) повертає символ за його кодом (номером в таблиці кодів). Зворотну операцію знаходження номера символу сh виконують за допомогою функції Ord(ch).

Приклад №1

Написати програму для виведення «трикутника» символів:

А

АВ

АВС

АВ… YZ.

Розв’язування

«Трикутник» будується за таким правилом: послідовно виводяться частини латинського алфавіту, що складаються з одного символу, з 2-х символів, з 3-х символів і так доти, доки не буде виведений весь алфавіт. Кількість таких послідовностей дорівнює кількості букв алфавіту. Оскільки символьний тип даних є порядковим типом, то змінну цього типу можна використовувати як параметр циклу:

Program Example;

Var i,j:Char;

Begin

For i:='A' to 'Z' do

Begin

For j:='A' to i do Write (j);

Writeln

End

End.

Приклад №2

Написати програму для підрахунку кількість цифр, які входять у заданий текст, що закінчується крапкою. Текст в даному випадку – це послідовність символів, введення кожного з яких завершується натисканням клавіші Enter.

Розв’язування

Будемо вводити символи доти, доки значення чергового символу не співпаде зі значенням ‘.’. Аналізуючи кожне значення, будемо збільшувати лічильник, якщо символ є цифрою:

Program Example;

Var ch:Char;

k:Integer;

Begin

Read (ch);

k:=0;

While ch<>'.' do

Begin

If (ch>='0') and (ch<='9') then k:=k+1;

Read(ch);

End;

Writeln ('Кількість цифр: ',k);

End.

Питання для самоконтролю

1. Що таке символьний тип даних та для чого він викорис­товується?

2. Як задаються значення змінних символьного типу?

3. Що таке таблиця кодів ASCII?

4. Які стандартні функції використовуються для роботи з символьними величинами?

Задачі

1) Модифікувати програму прикладу №2 так, щоб за її допомогою можна було визначити, чи є текст правильним записом цілого числа.

2) Напишіть програму, при виконанні якої після введення символу виводиться на екран його код.

3) Напишіть програму для виведення на екран символів таблиці ASCII з кодами від 32 до 255.

4) Скласти програму для визначення того, яка буква частіше зустрічається у введеному тексті: ‘а’ чи ‘б’?

5) *Дано послідовність символів, що містить n доданків і має такий вигляд: d1±d2±…±dn (d1, d2 і т.д. – цифри, ± – знак «+» або «–», n>1). Обчислити значення виразу.

еще рефераты
Еще работы по информатике