Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Обработка текстовой информации. В Паскале при работе с текстовой информацией существует возможность обработки одиночных символов типа Char и последовательности символов - строк типа String




Текст программы

 

В Паскале при работе с текстовой информацией существует возможность обработки одиночных символов типа Char и последовательности символов - строк типа String.
Символьный тип. Тип Char - это один из базовых типов языка, предназначен для хранения и обработки одного символа.

Множеством его значений есть отдельные символы (буквы, цифры, знаки), упорядоченные в соответствии с расширенным набором символов ASCII-кода. Переменная этого типа занимает 1 байт памяти. Благодаря тому что в памяти машины символы сохраняются в виде кодов (большим считается тот символ, чей код больше), их можно сравнивать. Для символов допустимы все операции сравнения: <, <=, =,>,> =, <>.
Описание данных символьного типа:
Const Name1 = 'v'; - описание символьной константы,
Var Name2: CHAR; - описание символьной переменной.
Как правило, значение для символьных переменных и констант задаются в кавычках, например, "f", '1 ',' + '. Также можно задать значение, указав непосредственно числовое значение ASCII-кода, поставив перед этим числовым кодом знак #, например, # 35, # 102.
В Паскале для работы с символьной информацией реализованы функции преобразования: CHR (N) - символ с кодом N, ORD (S) - код символа S. Также применяются функции, определяющие SUCC (S) - следующий символ, PRED (S) - предыдущий символ. Для этих функций выполняются следующие зависимости:
SUCC (S) = CHR (ORD (S) +1);
PRED (S) = CHR (ORD (S) -1).
Для латинских букв 'a'.. 'z' выполняется функция UPCASE (S), которая переводит эти литеры в верхний регистр 'A'.. 'Z'.
Строковый тип. Тип String - тип данных, предназначенный для хранения и обработки последовательности символов. Строку можно рассматривать как особую форму одномерного символьного массива.
Описание данных строчного типа:
Const Name1 = 'computer'; - описание строчной константы,
Var Name2: STRING; - описание строчной переменной,
Name3: STRING [20]; - описание строчной переменной заданной длины,
По умолчанию длина строчной переменной равна 255 символам, но можно ограничить длину строки с помощью явного указания длины строки.
В Паскале реализовано обработки строк двумя путями: проработка строки как единого целого и как объекта, который создается из отдельных символов.
Первый путь позволяет:
• присвоение строчной переменной за одну операцию целой строки символов, например, Name2: = 'computer'; Name3: = 'science';
• объединение строк в произвольном порядке с помощью операции «+» (операции связывания, объединения), например,
Name3: = 'computer' + 'science';
Name3: = Name2 + Name3;
• сравнение строк с помощью операций сравнения: <, <=, =,>,> =, <>, например,
If Name3 <> Name2 then write ('no');
Второй путь позволяет в каждый символа строки обращаться за его номером позиции как к элементу массива по индексу, например,
Name3: = Name2 [6] + Name2 [2] + Name2 [4];
Элемент с нулевым индексом содержит символ, код которого указывает на действительную длину данной строки.
В Паскале реализованы процедуры и функции для обработки строк. Текущую длину строки S можно узнать с помощью функции LENGTH (S).
Группа функций и процедур, направленная на проработку фрагментов строки:
• функция COPY (S, N, M) - копирование фрагмента строки S длиной M, начинается с позиции N;
• функция POS (S1, S) - поиск фрагмента S1 в строке S (получаем позицию, с которой начинается фрагмент S1 в строке S);
• функция CONCAT (S1, S2,...) - объединение строк S1, S2,...;
• процедура INSERT (S1, S2, M) - вставка фрагмента S1 в строку S2 с позиции M;
• процедура DELETE (S1, N, M) - изъятие части строки S1 длиной M, начиная с позиции N;
• процедура VAL (S, N, Code) - преобразование строки цифровых символов S в число N (параметр Code = 0, если строка S образован не из цифровых символов)
• процедура STR (N, S) - преобразование числа N в строку цифровых символов S.
Для сортировки символьных строк (например, по алфавиту) целесообразно создать массив символьных строк (массив типа String), что с учетом возможности использования операций сравнения для строк, позволит простым способом применять основные алгоритмы сортировки

 




Поделиться с друзьями:


Дата добавления: 2015-04-24; Просмотров: 1070; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.