Функции trunc, round в Pascal.

Для того чтобы в Паскаль можно было оперировать не только целыми числами, но и дробными существуют вещественные типы данных. Один из таких типов называется Real. В этом уроке мы рассмотрим 2 функции, которые производятся над дробными числами. Это ...

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

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

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

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

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

Инициализация одномерного массива.

Отличительной особенностью Паскаля от большинства процедурных языков является то, что все переменные должны быть инициализированы. То есть в разделе VAR переменным отводится место, а начальное ...

Циклы с параметром. Оператор FOR.

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

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

Строки представляют собой последовательность символов (литер) и задаются в программе в виде констант или переменных. Константы могут быть явно определены в разделе 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.Работа со строковыми данными.