Строковый тип данных

Содержание

Слайд 2

Слайд 3

Основные сведения о символьных величинах Текст – это произвольная последовательность символов

Основные сведения о символьных величинах

Текст – это произвольная последовательность символов некоторого

алфавита.
Алфавитом может служить любое множество символов, например, (0,1…9), (А,Б…, а,…), (A,B…, a, b,..).
Строкой символов, или символьной (строковой, текстовой) константой, называется последовательность символов, заключенных в кавычки. Максимальная длина – 255 символов.
Cтрока, не содержащая ни одного символа называется пустой строкой или строкой нулевой длины.
Слайд 4

Типы переменных для работы с символами Символьный тип данных: Char. Описание

Типы переменных для работы с символами

Символьный тип данных: Char.
Описание Var

S:char.
Диапазон значений: любой символ (один!) – буквы, цифры, знаки препинаний и специальные символы. Каждому символу соответствует индивидуальный числовой код от 0 до 255.
Значения для переменных типа char задаются в апострофах, например: ch:=‘*’; a:=‘3’; letter:=‘G’; rus:=‘ф’.
Слайд 5

2. Строковый тип данных: String. Строкой называется последовательность символов определенной длины.

2. Строковый тип данных: String.
Строкой называется последовательность символов определенной длины.
Описание


Var Str1:string[30]; Str2: string.

Типы переменных для работы с символами

Слайд 6

Стандартные функции для работы с символьными величинами

Стандартные функции для работы с символьными величинами

Слайд 7

Операция сложения (склеивания) Позволяет строить из двух символьных строк третью, состоящую

Операция сложения (склеивания)

Позволяет строить из двух символьных строк третью, состоящую из

символов первой строки, за которой следуют символы второй строки.
1. Обозначение: знаком «+»
Пример: var str1, str2, str3: string(20);
begin
str1:=‘У Егорки’;
str2:=‘всегда отговорки’;
str3:=str1+’ ‘+str2;
В результате значение строки str3: «У Егорки всегда отговорки».
Слайд 8

2. Функция concat(str1,str2,…strn) (где n – произвольное количество) – функция сцепления

2. Функция concat(str1,str2,…strn)
(где n – произвольное количество) – функция

сцепления строк. Аргументами могут быть как имена строк, так и сами строки.
Пример:
а) Результат concat(str1,str2) будет строка :
«У Егорки всегдаотговорки»,
б) concat(‘ab’,’cd’,’ef’) - получится строка ‘abcdef’

Операция сложения (склеивания)

Слайд 9

Что получится в результате выполнения программы? program slovo; uses crt; var

Что получится в результате выполнения программы?

program slovo;
uses crt;
var a,

b, c, d, k, l, m, n: string;
begin
clrscr;
a:= ‘пар’;
b:= ‘ом’;
c:= ‘с’;
d:= ‘ад’;
k:= a + b; l:= c + b; m:= c + d; n:= a + d;
write (k, ‘ ’, l, ‘ ‘, m, ‘ ‘, n );
readln
end.
Слайд 10

Сравнение Сравнение строк выполняется посимвольно в соответствии с их кодами до

Сравнение

Сравнение строк выполняется посимвольно в соответствии с их кодами до первого

несовпадения. Если одна из строк закончилась до первого несовпадения, то она считается меньшей. Пустая строка меньше любой строки.
Две строки называются равными, если они равны по длине и совпадают посимвольно.
‘Balkon’<‘balkon’
‘balkon’>’balken’
‘balkon’>’balk’
Можно использовать любые сравнения и их комбинации в условных операторах (>, >=, <, <=, =, <>).
Слайд 11

Доступ к отдельному символу Для доступа к отдельному символу в строке

Доступ к отдельному символу

Для доступа к отдельному символу в строке необходимо

указать имя строки и в квадратных скобках номер позиции элемента (символа) в строке.
По отношению к отдельному символу строки возможны все те же операции, что и по отношению к переменной типа Char.
Слайд 12

Длина строки Длина строки – это количество введенных символов, не может

Длина строки

Длина строки – это количество введенных символов, не может превышать

максимально возможной длины, указанной в описательной части.
Значение длины определяется при помощи функции Length(…), результат которой целое число, равное количеству символов.
Пример:
Str1:=‘ABCDEFGH’;
Str2:=‘Мама мыла раму’;
k1:= Length(str1);
K2:= Length(str2);
Результат: k1=8; K2=14.
Слайд 13

Копирование Функция copy(str,n,m) – копирует m символов строки str, начиная с

Копирование

Функция copy(str,n,m) – копирует m символов строки str, начиная с n-го

символа. При этом исходная строка не меняется.
Результат можно присваивать другой строке или сразу выводить на экран.
Пример: Str1:=‘ABCDEFGH’;
Str2:=‘abcdefgh’;
Str3:=copy(str1,4,3);
Writeln(str3); Результат: str3=‘DEF’
Writeln(copy(str2,4,3)); Результат: ‘def’
Слайд 14

program primer; var a, b, c, d: string; begin a:= ‘лекарство’;

program primer;
var a, b, c, d: string;
begin
a:= ‘лекарство’;
b:=

copy (a, 8, 1) + copy (a, 4, 1) + copy (a, 1, 2) + copy (a, 7, 1);
c:= copy (a, 3, 1) + copy (a, 5, 1) + copy (a, 2, 1) + copy (a, 6, 1) + copy (a, 1, 1) + copy (a, 9,1);
d:= copy (a, 6, 1) + copy (a, 2,1) + copy (a, 7, 1) + copy (a, 3, 2);
write (b, ‘ ‘, c, ‘ ‘, d);
end.

Что получится в результате выполнения программы?

Слайд 15

Удаление Используется процедура Delete(str,n,m), которая вырезает из строки str m символов,

Удаление

Используется процедура Delete(str,n,m), которая вырезает из строки str m символов, начиная

с n-го; при этом сама строка изменяется.
Пример:
Str1:=‘ABCDEFGH’;
Delete(str1,3,4);
Результат: Str1=‘ABGH’
Слайд 16

Замена (вставка) Вставку строки Str1 в строку Str2, начиная с n-го

Замена (вставка)

Вставку строки Str1 в строку Str2, начиная с n-го символа

осуществляет процедура Insert(Str1,Str2,n), при этом первая строка не изменяется, а вторая получает новое значение.
Пример: Str1:=‘ABCDEFGH’;
Str2:=‘abcdefgh’;
Insert(str1,str2,3);
Результат: Str2=‘abABCDEFGHcdefgh’
Слайд 17

Что делает данная программа? Каков результат её выполнения? program primer1; var

Что делает данная программа? Каков результат её выполнения?

program primer1;
var a, b,

c, d : string;
begin
a:= ‘лекарство’;
delete (a, 3, 5);
writeln (a);
delete (a, 3, 1);
b:= ‘т’;
insert (b, a, 3);
writeln (a);
c:= ‘кот’;
d:= ‘мпо’;
insert (d, c, 3);
writeln (c);
end.
Слайд 18

Подстрока Позицию подстроки str1 в строке str2 определяет функция pos(str1,str2). Результат

Подстрока

Позицию подстроки str1 в строке str2 определяет функция pos(str1,str2).
Результат –

целое число, которое определяет номер первого элемента, с которого начинается первое вхождение подстроки в строку. Если такой подстроки нет, то значение функции равно 0.
Пример: Str1:=‘CDE’;
Str2:=‘ABCDEFGH’;
K1:=pos(str1,str2);
K2:=pos(str2,str1);
Результат: K1=3; K2=0
Слайд 19

Числа и строки 1. Процедура Str(N,str1) переводит числовое значение N в

Числа и строки

1. Процедура Str(N,str1) переводит числовое значение N в строковое

и присваивает результат строке str1, причем можно переводить любые числа.
Пример: Str(1234, str1); Результат str1:=‘1234’
2. Функция val(str,N,K) переводит строковое значение в числовое.
Если строка действительно является записью числа, то значение K=0, а N – это число; иначе K будет равно номеру символа, в котором встречается первое нарушение записи числа N.
Пример:
val(‘1234’,N,K); N=1234, K=0
val(’12d34’,N,K); N=0, K=3
Слайд 20

Функции преобразования типов Функция определения символа по числовому коду в ASCII

Функции преобразования типов

Функция определения символа по числовому коду в ASCII –

chr(x).
X – тип integer (byte), результат – тип char.
Пример: chr(65) = ‘A’
2. Функция определения числового кода символа в ASCII – ord(x).
X – тип char, результат – тип integer.
Слайд 21

РЕШЕНИЕ ЗАДАЧ

РЕШЕНИЕ ЗАДАЧ

Слайд 22

Задача 1 В заданной строке А заменить выделенную подстроку на подстроку

Задача 1

В заданной строке А заменить выделенную подстроку на подстроку В.

Для поиска позиции, с которой надо произвести замену, воспользоваться функцией поиска подстроки.
А:=’Выдать премию в размере месячного оклада’
В:= ‘годового’