Строковые процедуры и функции в Турбо-Паскале
В Турбо-Паскале имеются ряд стандартных процедур и функций, специально предназначенных для работы со строками.
3.1. Процедура DELETE.
Синтаксис:
DELETE(var S:String;Pos,Len:Integer);
Убирает из строки S Len символов начиная с Pos .Если Len больше длины S то ничего не происходит . Если Pos+Lеn больше длины строки то удаляются все символы до конца строки .
3.2. Процедура INSERT.
Синтаксис :
INSERT(S:String;var D:String;Pos:Integer);
Вставляет строку S в строку D начиная с символа с номером Pos . Если Pos больше длины D то S и D сливаются . Если длина результата при этом больше максимальной длины D то в D записываются только самые левые символы .
3.3. Процедура STR.
Синтаксис :
STR(I:Integer;var S:String);
STR(R:Real;var S:String);
Преобразует I или R из числа в строку и записывает эту строку в S.
ВНИМАНИЕ ! Процедура Str не дожна входить в функции, вызываемые в процедурах WRITE и WRITELN .
3.4. Процедура VAL.
Синтаксис :
VAL(S:String;var R:Real;var P:Integer);
VAL(S:String;var I,P:Integer);
Преобразует строковую переменную S в число ( тип зависит от типа переменной I или R соответственно ) . Если в строке S ошибок нет, то P равно 0, иначе значение R (или I) неопределено, а P присваевается номер первого ошибочного символа .
3.5. Функция CONCAT.
Синтаксис :
CONCAT(S1,S2,...,Sn:String):String;
Возвращает строку , полученную конкатенацией (слиянием) строк S1,...,Sn. Если длина результата больше 255 то возникает ошибка времени выполнения .
3.6. Функция COPY.
Синтаксис :
COPY(S:String;Pos,Len:Integer):String;
Возвращает строку , полученную из Len символов строки S начиная с позиции Pos . Если Pos больше,чем длина строки S то возвращается пустая строка . Если Pos + Len больше ,чем длина строки S то возвращаются только символы , принадлежащие строке S .
3.7. Функция LENGTH.
Синтаксис :
LENGTH(S:String):Integer;
Возвращает длину строки S .
3.8. Функция POS.
Синтаксис :
POS(Pattern,Sourse:String):Integer;
Возвращает номер символа , начиная с которого Pattern входит в Sourse . Если вхождения нет , то возвращается 0 .
Примеры программ
Пример 4.1. Написать программу, которая записывает строку в обратном порядке и выводит ее на экран.
Программа 4.1.
PROGRAM PR;
USES CRT;
VAR A,B:STRING[10];
I,N:INTEGER;
BEGIN
CLRSCR;
WRITELN('Введите строку длиною не более 10 символов:');
READLN(A);
N:=LENGTH(A);
B:='';
FOR I:=1 TO N DO
B:=B+A[N+1-I];
WRITELN(B)
END.
Пример 4.2. Подсчитать число вхождений некоторого слова в заданный текст.
Программа 4.2.
PROGRAM PR42;
USES CRT;
TYPE TEXT=STRING[100];
WORDS=STRING[10];
VAR A,B:TEXT;
C:WORDS;
P,N,D:INTEGER;
BEGIN
CLRSCR;
WRITELN('Введите текст длиною не более 100 символов');
READLN(A);
B:=A;
WRITELN('Введите слово длиною не более 10 символов');
READLN(C);
N:=0;
D:=LENGTH(C);
P:=POS(C,B);
WHILE P>0 DO
BEGIN
N:=N+1;
DELETE(B,P,D);
P:=POS(C,B)
END;
WRITELN;
WRITELN('Число вхождений слова "',C,'" в текст :');
WRITELN;
WRITELN(A);
WRITELN;
WRITELN('равно ',N)
END.
Рекомендуемая литература
Информатика: Учебник. – 3-е перераб. Изд. /Под ред. Н.В. Макаровой. – М.: Финансы и статистика, 2001. – 768 с.
Информатика для юристов и экономистов: Учеб. для вузов /Под ред. С.В. Симоновича. – СПб.: Питер, 2001. - 688 с.
Информатика. Базовый курс /Симонович С.В. и др. – СПб.: Издательство "Питер", 1999.- 640 с.
Информатика: Учеб. Пособие для студентов пед. вузов /Могилев А..В., Пак Н.И., Хеннер Е.К. М.: Изд. Центр "Акадкмия", 2000. – 816 с.
Бахарева Н.Ф. и др. Машинные алгоритмы обработки информации: Методические указания ОГТУ – Оренбург: 1995. – 40 с.
Microsoft Windows 95. Шаг за шагом. Практическое пособие./Пер. с англ., М.: ЭКОМ, 1996 -320 с.
Мюллер Д. Нортон П. Полное руководство по Windows 95 Питера Нортона. М.: Бином, 1998 -728 с.
Ресурсы Microsoft Windows 95. М.: Изд. отд. Русская редакция 1996 – 656 с.
Гордеев А.В., Молчанов А.Ю. Системное программное обеспечение – СПб.: Питер 2001. – 736 с.
Персон Р., Роуз К. Мicrosoft Word 97 в подлиннике: Пер. с англ. - СПб.: ВНV, 1997.-1120 с.
Microsoft Office 97: наглядно и конкретно: Иллюстрированный справочник. - М.: Русская редакция, 1997. -352с.
Новиков Ф., Яценко А. Microsoft Office 97 в целом. -СПб.: ВНV, 1998. –624с.
Microsoft Office 97: наглядно и конкретно: Иллюстрированный справочник. - М.: Русская редакция, 1997. –352 с.
Дата добавления: 2015-10-26; просмотров: 573;