Обработка текстовых величин

Содержание

Слайд 2

Строки в pascal

Строка – это любая последовательность символов, заключенная в апострофы, количество

Строки в pascal Строка – это любая последовательность символов, заключенная в апострофы,
символов не превышает 255.
Например:
D:=‘hgtэждsdfбуй7654;%:?’;
С строкой можно работать, как с массивом, например d[5] – это символ под 5-м номером в строке d, т.е. это символ ‘ж’

Слайд 3

Операция конкатенации (соединения)

Var a, b, c: string;
String – символьные величины
При присваивании переменной

Операция конкатенации (соединения) Var a, b, c: string; String – символьные величины
символьного типа какого-либо значения, это значение заключается в апострофы.
A:= ‘ток’
B:= ‘по’
C:=B+ A Результат: С= ‘поток’

Слайд 4

Процедуры над строками

DELETE(s, p, n); Удалить из строки s, n символов,

Процедуры над строками DELETE(s, p, n); Удалить из строки s, n символов,
начиная с позиции p.
Например:
S:=‘987654321’;
DELETE(s,4,3);
В строке s останется ‘987321’

Слайд 5

Процедуры над строками

Insert(s1, s2, p) – вставить строку s1 в строку

Процедуры над строками Insert(s1, s2, p) – вставить строку s1 в строку
s2, начиная с позиции p
s1:=‘ EC ‘; s2:=‘ЭВМ1841’; insert(s1, s2,4);
В s2 после этого будет храниться:
‘ЭВМ ЕС 1841’

Слайд 6

Процедуры над строками

VAL(s, x, e);
Преобразует строку s в целое или вещественное

Процедуры над строками VAL(s, x, e); Преобразует строку s в целое или
число x, если ошибка e равна 0, иначе преобразование не выполняется, а в переменной e хранится номер позиции из-за которой преобразование не возможно.
S:=‘123’; val(s, x, e); x:=123 (число)
S:=’12.2’; val(s, x, e); x:=12.2 (число)
S:=‘1.2a+3’; val(s, x, e); e=4 преобразование не выполнено.

Слайд 7

Процедуры над строками

STR(x, s); Преобразует число x в строку s
Например:
X:=1234;
Str(x, s); s=‘1234’

Процедуры над строками STR(x, s); Преобразует число x в строку s Например:
– строка!!! Не число!!!

Слайд 8

Функции над строками

A:= ‘ток’
B:= ‘по’
C:=CONCAT(b, a)
Значение переменной b - поток

Функции над строками A:= ‘ток’ B:= ‘по’ C:=CONCAT(b, a) Значение переменной b - поток

Слайд 9

Функции над строками

Определение количества символов в строке
Var a, b: string;
c: integer;
a:=‘информатика’;
b:=‘программирование’;
c:=length(a); c=11
c:=length(b); c=16

Функции над строками Определение количества символов в строке Var a, b: string;

Слайд 10

Функции над строками

ORD(a) – переводит символ a в ASCII код. A

Функции над строками ORD(a) – переводит символ a в ASCII код. A
– типа CHAR – это 1 символ в строке.
CHR(b) – переводит ACSII-код b в символ. B – тип integer или byte.
A:=‘p’
Write( ORD(a)); 112 – код символа p
B:=77;
Write(chr(b)); М – символ с кодом 77

Слайд 11

Функции над строками

A:=COPY(s, p, n);
В переменную a копируется из строки s, n

Функции над строками A:=COPY(s, p, n); В переменную a копируется из строки
символов, начиная с позиции p.
Например:
S:=‘информатика’;
A:=copy(s, 3, 5); a=‘форма’

Слайд 12

Функции над строками

X:=pos(s1, s2); Определяет позицию первого вхождения подстроки s1 в строке

Функции над строками X:=pos(s1, s2); Определяет позицию первого вхождения подстроки s1 в
s2, если вхождение не обнаружено, то ответ 0.
Например:
S2:=‘С Новым годом’;
S1:=‘год’;
X:=pos(s1, s2); x=9;

Слайд 13

Функции над строками

R:=upcase(c); Преобразует символ с в большую букву латинского алфавита, если

Функции над строками R:=upcase(c); Преобразует символ с в большую букву латинского алфавита,
это не возможно, то преобразования не происходит.
Например:
C:=‘1’;
R:=upcase(c); r=‘1’;
C:=‘a’;
R:=upcase(c); r=‘A’;

Слайд 14

Задачи

Задача 1
Из текста «береги честь смолоду» получить текст «смолоду честь береги».
Задача 2
Проверить

Задачи Задача 1 Из текста «береги честь смолоду» получить текст «смолоду честь
является ли введённый текст палиндромом.

Слайд 15

Задачи

Задача 3
Вводимый с клавиатуры текст вывести в столбец, по одному слову в

Задачи Задача 3 Вводимый с клавиатуры текст вывести в столбец, по одному
столбце.
Задача 4
В введённом с клавиатуры тексте, подсчитать сколько раз встречается заданная буква.