Операция сцепления и операция отношения в Турбо-Паскаль

Операция сцепления и операция отношения в Турбо-Паскаль

А какие же существуют операции для работы со строками, спросите Вы. Для строк и символов определена одна единственная операция – сцепление. Она обозначается символом +.

Например, программа

напечатает строку

Турбо-Паскаль

Другие действия со строками можно выполнять, используя встроенные функции, которые будут подробно рассмотрены далее.

Кроме описанных выше операций существуют также операции отношения (сравнения):

=    — равно;
<>  — не равно;
<    — меньше;
>    — больше;
<=  — меньше или равно;
>=  — больше или равно.

Очевидно, что сравнивать можно лишь переменные одного типа. Результат применения операции отношения к переменным любого типа будет иметь логический тип (boolean).

Как сравниваются числа, Вам понятно, а вот как сравнить две строки? Какая же из них «больше»?

Сравнение двух строк происходит следующим образом. Символы строк сравниваются попарно друг с другом так, что первый символ первой строки сравнивается с первым символом второй строки, второй символ первой строки – со вторым символом второй строки и т.д. При сравнении символов на самом деле сравниваются их коды (см. приложение 2). Но, вообще-то, порядок следования кодов символов совпадает с алфавитным (если используются символы лишь одного алфавита). Если одна строка короче другой, то во время их сравнения недостающий символы заменяются нулями.

Например, справедливы следующие отношения:

‘ааа’<’ваа’
‘ааа’<’ааб’
‘аа’<’ааа’

При сравнении данных типа BOOLEAN учитывается внутреннее соглашение Турбо-Паскаля, в соответствии с которым false есть нулевой байт, а true – единичный. Заметим, что функция ord преобразует к целому не только символы, но и логические величины, поэтому

ord(false)=0,
ord(true)=1.

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: