Функции Copy, Pos, процедуры Delete, Insert.

Функция Copy позволяет копировать из строки часть символов. Функция имеет 3 параметра. Copy (st, index, count). St-строка из которой копируют, Index-номер символа, с которого начинается копирование, Count-количество символов, которое будет ...

Ветвления в Pascal.

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

Применение логических операций с оператором IF.

В данном уроке мы рассмотрим применение логической операции And с условным оператором If.

Циклы и массивы

ФАЙЛЫ ЗАПИСЕЙ

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

Описание процедур.

Процедуры являются основой модульного программирования (МП). Модульное программирование – это процесс построения программы, разделенной на логические части, называемые модулями, и последовательное ...

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

Строки представляют собой последовательность символов (литер) и задаются в программе в виде констант или переменных. Константы могут быть явно определены в разделе CONST или неявно в операторах присваивания, в выражениях или списках вывода на внешние устройства.
С использованием текстовых строк в качестве констант мы уже встречались практически в каждой из описанных выше задач. Приведем для сравнения два способа определения строки символов.

  • Явное определение текстовой константы:

CONST А = 'Введите значения X, Y';
VAR X, Y: REAL;
BEGIN WRITELN(A);
READLN(X, Y);

  • Неявное определение текстовой константы:

VAR X, Y: REAL;
BEGIN WRITELN('Введите значения X, Y');
READLN(X, Y);
При программировании можно использовать оба способа. Во всех случаях строка символов (текстовая константа) заключается в апострофы.
Строка символов в Паскале может иметь фиксированную и переменную длину. Для работы со строкой фиксированной длины используют одномерный массив вида В = ARRAY[0..M] OF CHAR. Размерность массива М определяется количеством символов в строке и не превышает 65535 символов.
Для работы с короткими строками переменной длины, не превышающей 255 символов, следует пользоваться специальным типом данных А = STRING[N], где N — максимальное количество символов в строке. Длина такой строки динамически меняется от 0 до N. Но N не должно превышать 255 символов. При явном объявлении константы А = 'Введите значения X, Y' она приобретает тип ARRAY[1 .. 21] OF CHAR.
Примеры текстовых констант:
CONST BG01 = "; { Пустая строка, N = 0 }
С = 'Я учусь программировать';    { Строка текста, N = 23 }
Поскольку массивы литер являются обычными массивами, они обладают всеми свойствами регулярных массивов. Можно получить копию всего массива (строки) с помощью оператора присваивания, а можно извлечь значение одной литеры с помощью индекса массива.
Пример 8. Текст 'Я учусь программировать' вывести на экран дисплея в обратном порядке.


PROGRAM PR8;
CONST
А = 'Я учусь программировать'; {Текстовая константа А }
VAR     
В: ARRAY[1..LENGTH(A)] OF CHAR; {Переменная: массив символов В}
I: INTEGER;
BEGIN
В:= А; { Копирование текстовой константы А в массив В }
FOR I:= LENGTH(A) DOWNTO 1
DO WRITE(B[I]); { Вывод литеры с номером I на экран }
END.


Строки одного и того же типа (одной длины) могут фигурировать в логических выражениях, причем помимо операций отношений =, <> можно использовать также <, >, <=, >=. Сравнение строк производится путем последовательного сравнения литер слева направо, до первого несовпадения. Вы можете скачать K-Lite Codec Pack бесплатно и легко установить его на компьютер, чтобы все видео отображалось в хорошем качестве. Порядок символов определяется по таблице кодов ASCII.
Например, логическое выражение 'CONTEST' < 'CONTEXT' принимает значение TRUE, поскольку литера 'S' лексикографически меньше 'X', то есть ORD('S') <ORD('X').
Для совместимости с библиотеками WINDOWS и другими языками программирования введены длинные строки ASCII (длиной до 65535 байтов). Этим строкам дан стандартный тип PCHAR.


Предыдущая статья: Спецификация процедуры.
Оглавление: Лекции по Pascal. Часть 2.
Следующая статья: Массив символов.


Комментарии  

 
-3 # Иско 07.01.2015 15:20
довольно полезно...
 
   ГлавнаяПаскальЛекции по Pascal. Часть 2.Спецификация процедуры.