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

Содержание

Слайд 2

Строка - это упорядоченная последовательность символов. Каждый символ строки занимает 1 байт.

Строка

- это упорядоченная последовательность символов.
Каждый символ строки занимает 1 байт.

Слайд 3

Строка Количество символов в строке называется её длиной. Самый первый байт

Строка

Количество символов в строке называется её длиной.
Самый первый байт в строке

имеет индекс 0 и содержит текущую длину строки.
Слайд 4

Строка Первый значащий символ строки занимает второй байт и имеет индекс 1.

Строка

Первый значащий символ строки занимает второй байт и имеет индекс 1.

Слайд 5

Строковая константа – последовательность символов, заключенных в апострофы. Примеры: ‘12+6’ ‘ это строковая константа’ ‘3,1415’ ‘’

Строковая константа

– последовательность символов, заключенных в апострофы.
Примеры:

‘12+6’
‘ это строковая константа’


‘3,1415’
‘’
Слайд 6

Строковая переменная описывается в разделе описания переменных: var :string[ ]; Примеры: var slovo :string[30]; stroka :string;

Строковая переменная

описывается в разделе описания переменных:
var
<идентификатор>:string[<максимальная длина строки>];
Примеры:

var slovo :string[30];

stroka :string;
Слайд 7

Строковая переменная может быть описана с использованием раздела описания типов. Пример:

Строковая переменная

может быть описана с использованием раздела описания типов.
Пример:

type stroka =

string[50];
var s : stroka;
Слайд 8

Элементы строки идентифицируются именем строки с индексом, заключенным в квадратные скобки.

Элементы строки

идентифицируются именем строки с индексом, заключенным в квадратные скобки.
К любому

элементу строки можно обратиться как к элементу массива array [0..n] of char
Примеры:
Индекс может быть положительной константой, переменной, выражением целого типа.

stroka[3], slovo[15]

Слайд 9

ОПЕРАЦИИ НАД СТРОКАМИ

ОПЕРАЦИИ НАД СТРОКАМИ

Слайд 10

Операция сцепления (конкатенации) (+) сцеплять можно как строковые константы, так и

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

сцеплять можно как строковые константы, так и переменные.
Примеры:

K:=

‘45’ + ‘12’ + ‘abc’;
результат:
‘4512abc’
Слайд 11

Операции отношения: =, , =,

Операции отношения: =, <, >, <=, >=, <>

Слайд 12

Сравнение строк Производится слева направо до первого несовпадающего символа, и та

Сравнение строк

Производится слева направо до первого несовпадающего символа, и та строка

считается больше, в которой первый несовпадающей символ имеет больший номер в таблице символьной кодировки.
Слайд 13

Функция COPY (s, p, n) выделяет из строки S подстроку длиной

Функция COPY (s, p, n)

выделяет из строки S подстроку длиной n

символов, начиная с позиции p.
n и p – целочисленные выражения
Примеры:

h:= copy (‘123456789’, 2, 4);
результат: ‘2345’
t:= copy (‘ водопровод’, 6, 6);
результат: ‘провод’

Слайд 14

Функция CONCAT(s1, s2,…,sn) выполняет сцепление строк s1, s2,…,sn в одну строку.

Функция CONCAT(s1, s2,…,sn)

выполняет сцепление строк s1, s2,…,sn в одну строку.
Пример:

W:=concat(‘абра’, ‘када’,

‘бра’);
результат: ‘абракадабра’
Слайд 15

Функция LENGTH(s) определяет текущую длину строки s. Примеры: Результат – значение

Функция LENGTH(s)

определяет текущую длину строки s.
Примеры:
Результат – значение целого типа.

S:= length

(‘test#3’);
результат: 6
G:= length (‘(x+y)/2’);
результат: 7
Слайд 16

Функция POS (s1, s2) обнаруживает первое появление в строке s2 подстроки

Функция POS (s1, s2)

обнаруживает первое появление в строке s2 подстроки s1.
Примеры:
Результат

– целое число, равное номеру позиции, где находится первый символ подстроки s1.

А:= pos ( ’12’, ’12abc12’);
результат: 1
В:= pos ( ’t’, ’my name’);
результат: 0

Слайд 17

Функция UPCASE(C: char) преобразует строчную латинскую букву в прописную. Любые другие

Функция UPCASE(C: char)

преобразует строчную латинскую букву в прописную. Любые другие символы возвращаются без

преобразования.
Примеры:
Результат – значение типа char.

f:=‘pascal’;
f[1] := upcase (s[1]);
результат: f = ‘Pascal’

Слайд 18

Функция ORD(ch: char) возвращает код символа ch. Примеры: Результат – значение

Функция ORD(ch: char)

возвращает код символа ch.
Примеры:
Результат – значение типа byte.

T :=

ord (‘М’);
результат: 77
E := ord (‘=’);
результат: 61
Слайд 19

Функция CHR(n: byte) возвращает символ по коду, равному значению выражения n.

Функция CHR(n: byte)

возвращает символ по коду, равному значению выражения n.


Если n можно представить как числовую константу, то можно также пользоваться записью #n. 
Примеры:
Результат – значение типа char.

w:= chr (73);
результат: ‘I’
d:= chr (100 + 5);
результат: ‘i’

Слайд 20

Процедура DELETE(s, poz, n) удаляет n символов из строки s, начиная

Процедура DELETE(s, poz, n)

удаляет n символов из строки s, начиная с

позиции poz.
Примеры:

delete (‘мармелад’, 1, 5);
результат: ‘лад’
delete (‘abcdefg’, 2, 6);
результат: ‘а’

Слайд 21

Процедура INSERT(s1, s2, p) вставляет строку s1 в строку s2, начиная

Процедура INSERT(s1, s2, p)

вставляет строку s1 в строку s2, начиная с

позиции p.
Примеры:

insert (‘IBM–’, ‘ЭВМ PC’, 5);
результат: ‘ЭВМ IBM–PC’
insert(‘#’ , ‘map2’, 4);
результат: ‘map#2’

Слайд 22

Процедура STR(x:a:b,stroka) преобразует число х любого вещественного или целого типов в

Процедура STR(x:a:b,stroka)

преобразует число х любого вещественного или целого типов в строку

символов stroka
a и b (если они присутствуют) - задают формат преобразования.
a – определяет общую ширину поля, выделенного под соответствующее символьное представление вещественного или целого числа х
b – количество символов в дробной части (этот параметр имеет смысл только в том случае, когда х – вещественное число)
Слайд 23

Процедура STR(x:a:b,stroka) Примеры: str (1234, t); результат: t = '1234' str

Процедура STR(x:a:b,stroka)
Примеры:

str (1234, t); 
результат: t = '1234'
str (452.567, t); 
результат: t =

'452.567'
str (4.52567е+2, t);
результат: t = '4.52567e+2'
Слайд 24

Процедура VAL (s, x, code) преобразует строковое значение S в его

Процедура VAL (s, x, code)

 преобразует строковое значение S  в его численное представление  X типа  real или

integer.
Примеры:
Параметр Code содержит признак ошибки преобразования (0 - нет ошибки)

val (‘-1268’, i, k);
результат:  i=-1268, k=0
val ('12-45', x, k);
результат: x = 0, k = 3

Слайд 25

Задания на закрепление 1. Запишите результат выполнения следующих стандартных процедур: str

Задания на закрепление

1. Запишите результат выполнения следующих стандартных процедур:
str (365.874, st)

str (2.89784е+4, st)
val ('9876', x, k) val ('1.0098e+6', y, k)
val ('679-8', y, k) val ('2,567', y, k)
2. Определите результат выполнения программы:
var s: string;     k, sum, d, i: integer; begin     sum := 0; s := '12r345ty';     for i := 1 to length (s) do         begin           val (s[i], d, k);           if k = 0 then sum := sum + d         end; writeln (sum:6) end.
Слайд 26

Задания на закрепление 3. Поставьте знак сравнения (>, 'Компьютер'____'Комп‘ 'Stroka'____'stroka' 'кошка'____'кошка‘

Задания на закрепление

3. Поставьте знак сравнения (>, <, =) между парами

строк и объясните свой ответ.
'Компьютер'____'Комп‘ 'Stroka'____'stroka'
'кошка'____'кошка‘ 'кот'_____'kот'
'муха'____'слон'
4. Определите результат выполнения программы.
var s: string;     i, k: integer; begin    s := 'абракадабра';    k := 0;    for i := 1 to length (s) do         if s[i] = 'a' {if copy (s, i, 1) = 'a'}           then k := k + 1;    writeln (k: 5) end.
Слайд 27

Задания на закрепление 5. Определите результат выполнения программы: var s: string;

Задания на закрепление

5. Определите результат выполнения программы:
var s: string;          i, j:

integer; begin     s := ‘programm';     for i := 1 to length (s) do           begin              for j := 1 to i - 1 do write(' ');              writeln (s[i])          end end.