Одномерный массив строк используется для хранения в оперативной памяти компьютера промежуточного фрагмента текста с целью его обработки.
Массив строк ST в разделе переменных VAR можно объявить следующим образом:
VAR ST: ARRAY[1..N] OF STRING; где N — верхняя граница массиве, то есть количество строк, которые одновременно могут находится в оперативной памяти. Значение N может быть задано в разделе констант CONST.
Инициализация массива строк.
Наиболее часто используют три источника формирования массива строк. Первым источником является ввод информации с клавиатуры. При этом можно выделить два способа.
VAR ST: ARRAY[1..N] OF STRING; I, К: INTEGER; 
BEGIN
...
WRITELN('Введите количество информационных строк'); 
READLN(K); 
WRITELN('Введите информационные строки:'); 
FOR I := 1 TO К DO READLN(ST[I]);
VAR ST: ARRAY[1..N] OF STRING; I, К: INTEGER; 
BEGIN
...
WRITELN('Введите информационные строки:'); FORI:= 1TON
DO BEGIN 
 READLN(ST[I]);
 IF ST[I] = " THEN BREAK; {Пустая строка, конец ввода}
 IF I = N THEN WRITELN('Введена последняя строка массива ST') 
 END;
Вторым источником массива строк является текстовый файл. Информация из текстового файла переписывается строка за строкой в массив строк, пока он не заполнится информацией. После чего начинается обработка данных в массиве строк.
Третьим источником является длинная строка, содержащая сцепку коротких строк в области динамической памяти. Вы можете купить качественные наушники monster beats by dre по оптимальной и доступной цене. Прочитать содержимое I-ой строки массива ST можно следующим образом С:= ST[I], Где С: STRING строка текста.
Обратиться к J-ой литере I-ой строки массива ST можно следующим образом CH:=ST[I,J], где СН: CHAR переменная литерного типа.
Упорядочение строк в массиве.
Одной из важнейших задач является сортировка массива строк по алфавиту. Например, процесс заполнения информацией о городах России массива ST идет c помощью географического атласа. Естественно, что в компьютерную базу заносятся названия городов, расположенных по территориальному принципу. А вот использовать список городов удобнее, если названия расположены в алфавитном порядке.
Пример 15. Разработать программу, обеспечивающую ввод названий городов в произвольном порядке. Упорядочить список городов в алфавитном порядке и вывести этот список на экран монитора. Для сортировки строк массива ST, содержащих названия K городов, будем использовать метод пузырька.
PROGRAM PR15;
CONST N = 50; {Максимальное число городов в списке}
VAR ST: ARRAY[1..N] OF STRING; I, J, К: INTEGER; L: STRING; 
BEGIN
К:= 0; WRITELN('Вводите названия городов:'); 
FOR I:=1 TO N
DO BEGIN 
 READLN(ST[I]); 
 IF ST[I] = " THEN BEGIN
 К := I - 1;
 BREAK; {Пустая строка, конец ввода}
 END; 
 IF I = N THEN BEGIN
 К:= N; 
 WRITELN('Введена последняя строка массива ST') 
 END
END;
FOR I:= 2 TO К {Сортировка массива строк ST}
DO FOR J:=K DOWNTO I 
 DO IF ST[J-1]>ST[J]
 THEN BEGIN {Переставить ST[J-1] с ST[J] местами}
 L := ST[J-1]; ST[J-1] := ST[J]; ST[J] := L
 END; {IF}
{ Вывод на экран отсортированного массива ST}
FOR I := 1 ТО К DO WRITELN(ST[I]) 
END.
Предыдущая статья: Манипулирование строками STRING.
Оглавление: Лекции по Паскаль. Часть 2.
Следующая статья: ЗАПИСИ. ТИП ДАННЫХ RECORD.
Комментарии