Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Операции над строками

Описание строковых переменных

Строковый тип

Вопросы для самопроверки

1. В чем суть алгоритма бинарной сортировки данных?

2. В чем суть алгоритма пузырьковой сортировки данных?

3. В чем суть алгоритма сортировки данных вставкой?

4. Какие улучшенные алгоритмы сортировки данных Вы знаете?


Для хранения текста можно использовать массив символов. Однако для этих целей в языке Паскаль имеется специальный строковый тип – String.

Значением строкового типа является последовательность символов.

Строковый тип описывается с помощью ключевого слова String, после которого в квадратных скобках указывается длина строки. Длина строки может быть от 1 до 255 символов.

Пример: описание строковых переменных фиксированной длины

type

MyString: String[30];

var

s1: MyString;

s2: String[25];

Если квадратных скобок не следует, то описанная переменная является строкой переменной длины, в которую можно записать до 255 символов.

Пример: описание строковых переменных переменной длины

var s: String;

Тип String без указания длины совместим со всеми типами строк.

Особенностью строковых переменных является то, что к ним можно обращаться как к скалярным переменным, так и как к массивам. Во втором случае применяется конструкция "переменная с индексом", что обеспечивает доступ к отдельным символам строки. При этом нижняя граница индекса равна 1. Отдельный символ строки совместим с типом Char.

Пример: обращение к отдельным символам массива

var s: String;

s:=’Вася’;

s[3]:=’н’; { Итог: s=’Ваня’ }

В памяти ЭВМ строка занимает количество байтов, на единицу большее ее длины. Нулевой байт строки содержит ее длину.

Для строк определены операции присваивания, слияния (конкатенации) и сравнения.

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

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

При вводе строковых переменных количество вводимых символов может быть меньше, чем длина строки. В этом случае вводимые символы размещаются с начала строки, а оставшиеся байты заполняются пробелами. Если количество вводимых символов превышает длину строки, лишние символы отбрасываются.

В программе переменную строкового типа можно:

ü заполнять, например readln(s);

ü выводить значение на экран – writeln(s);

ü присваивать в строковую переменную какой-либо текст – s:=’Вася’;

ü присваивать значение строки другой строковой переменной – s2:=s;

ü «склеивать» с другими строками (конкатенация) – s:=s2+’!!!’;

ü сравнивать строки – s=s2.

Инициализация строк может производиться и с помощью типизированных констант.

Пример: инициализация строк с помощью типизированных констант

const sName: String[9] = ‘IBM PC/AT’;

<== предыдущая лекция | следующая лекция ==>
Улучшенные сортировки | Обращение к записям
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 303; Нарушение авторских прав?; Мы поможем в написании вашей работы!


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



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




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