ВУЗ:
Составители:
Рубрика:
55
К элементам символьных переменных могут быть применены такие
функции, как:
Таблица 1. Стандартные функции для литерного типа.
Функция: тип
Назначение
Chr(x:byte):chr
Ord(C:char):byte
Pred(C:char):char
Succ(C:char):char
UpCase(C:char):char
Возвращает символ ASCII – кода х
Возвращает код символа С
Выдаёт предшествующий С символ
Выдаёт последующий за С символ
Перевод символа ′a′. .′z′ в верхний регистр.
Стандартные процедуры и функции для
обработки строк
Таблица 2. Стандартные процедуры и функции.
Процедуры и функции Назначение
Length(s:string):byte
Concat(s1, s2, . . .,sn):string
Copy(S:string;start, len:integer):string
Delete
(var S:string; start, len:byte )
Insert(Subs:string,var S:string;
start:integer)
Pos(Subs, s:string):byte
Str(Х[:F[:n]];var S:string)
Val(S:string;var x; var ErrCode:integer)
Выдаёт текущую длину строки
Слияние строк s1. . .s
n
Возвращает подстроку длиной len,
на-чинающуюся с позиции start
строки S.
Удаляет из S подстроку длиной len,
начинающуюся с позиции start строки
S.
Вставляет в S подстроку Subs,
начиная с позиции start.
Ищет первое вхождение подстроки
Subs в строке S и возвращает номер
первого символа Subs в S или 0, если
S не содержит Subs.
Преобразует числовые значения Х в
строковое S. Возможно задание
формата для Х
.
Преобразует строковое значение S
(строку цифр) в значение числовой
переменной Х.
56
Функции и процедуры для редактирования строк
1.
Функция Length(S:String) возвращает текущую длину строки S.
Вообще говоря, можно вместо неё пользоваться конструкцией Ord(S[0]), что
то же самое.
2. Функция Concat производит слияние переданных в неё строк.
Количество строк произвольно. Вместо неё всегда можно использовать
операцию «+», которая работает эффективнее.
Например:
var S, S1, S2:string;
begin
S1:=′начало′; S2:=′конец′;
writeln(concat(S1,S2));
end.
Вместо этого:
S:=S1+S2;
writeln(S);
Если сумма длин строк в Concat превысит максимальную длину
строки в левой части присваивания, то излишек будет отсечён справа.
3. Функция Copy(S:string;Start,Len:byte) возвращает подстроку
длиной в Len символов, начиная с символа Start. Если Start больше длины
всей строки S, то функция вернёт пустую строку, а если Len больше, чем
число символов от Star до конца строки S, то вернётся остаток строки S от
Start до конца.
Например:
var S1, S2, S3:string;
begin
S1:=′ABC***123′;
writeln (copy(S1,4,3)); {будет печатать «***»}
S2:= copy(S1, 10, 2);
writeln(S2); {будет печатать пустую строку}
writeln(copy(S1, 2, 5)); {будет печатать «
ВС***»}
end.
4. Процедура Delete(VAR S:string; Start,Len:Byte) – удаление части
строки. Видоизменяет строку S, стирая Len символов, начиная с символа с
номером Start:
S:=′СТРОКА′;
Delete(S, 2, 4); writeln(S); {будет печатать «СА»}
К элементам символьных переменных могут быть применены такие Функции и процедуры для редактирования строк функции, как: 1. Функция Length(S:String) возвращает текущую длину строки S. Таблица 1. Стандартные функции для литерного типа. Вообще говоря, можно вместо неё пользоваться конструкцией Ord(S[0]), что Функция: тип Назначение то же самое. 2. Функция Concat производит слияние переданных в неё строк. Chr(x:byte):chr Возвращает символ ASCII кода х Возвращает код символа С Количество строк произвольно. Вместо неё всегда можно использовать Ord(C:char):byte Pred(C:char):char Выдаёт предшествующий С символ операцию «+», которая работает эффективнее. Succ(C:char):char Выдаёт последующий за С символ Например: UpCase(C:char):char Перевод символа ′a′. .′z′ в верхний регистр. var S, S1, S2:string; begin S1:=′начало′; S2:=′конец′; writeln(concat(S1,S2)); end. Стандартные процедуры и функции для Вместо этого: обработки строк S:=S1+S2; writeln(S); Таблица 2. Стандартные процедуры и функции. Если сумма длин строк в Concat превысит максимальную длину Процедуры и функции Назначение строки в левой части присваивания, то излишек будет отсечён справа. Length(s:string):byte Выдаёт текущую длину строки 3. Функция Copy(S:string;Start,Len:byte) возвращает подстроку Concat(s1, s2, . . .,sn):string Слияние строк s1. . .sn длиной в Len символов, начиная с символа Start. Если Start больше длины Copy(S:string;start, len:integer):string Возвращает подстроку длиной len, всей строки S, то функция вернёт пустую строку, а если Len больше, чем на-чинающуюся с позиции start число символов от Star до конца строки S, то вернётся остаток строки S от строки S. Start до конца. Delete(var S:string; start, len:byte ) Удаляет из S подстроку длиной len, Например: начинающуюся с позиции start строки S. var S1, S2, S3:string; Insert(Subs:string,var S:string; Вставляет в S подстроку Subs, begin start:integer) начиная с позиции start. S1:=′ABC***123′; Pos(Subs, s:string):byte Ищет первое вхождение подстроки writeln (copy(S1,4,3)); {будет печатать «***»} Subs в строке S и возвращает номер S2:= copy(S1, 10, 2); первого символа Subs в S или 0, если writeln(S2); {будет печатать пустую строку} S не содержит Subs. writeln(copy(S1, 2, 5)); {будет печатать «ВС***»} Str(Х[:F[:n]];var S:string) Преобразует числовые значения Х в end. строковое S. Возможно задание 4. Процедура Delete(VAR S:string; Start,Len:Byte) удаление части формата для Х. строки. Видоизменяет строку S, стирая Len символов, начиная с символа с Val(S:string;var x; var ErrCode:integer) Преобразует строковое значение S номером Start: (строку цифр) в значение числовой переменной Х. S:=′СТРОКА′; Delete(S, 2, 4); writeln(S); {будет печатать «СА»} 55 56
Страницы
- « первая
- ‹ предыдущая
- …
- 26
- 27
- 28
- 29
- 30
- …
- следующая ›
- последняя »