Разделы презентаций


Работа со строками

Содержание

СодержаниеСтроковый тип данныхПредставление в памятиПонятие строкиИндексация строкиВвод и вывод строки на экранПримерТип данных StringКонстанты типа StringПримерТип Char

Слайды и текст этой презентации

Слайд 1Работа со строками
Ст. преподаватель:
Леонов Ю. А.
Выполнила:
Сулейманова П. Г.
гр.

10-САПР

Работа со строкамиСт. преподаватель: Леонов Ю. А.Выполнила:Сулейманова П. Г. гр. 10-САПР

Слайд 2Содержание
Строковый тип данных
Представление в памяти
Понятие строки
Индексация строки
Ввод и вывод строки

на экран
Пример
Тип данных String
Константы типа String
Пример
Тип Char

СодержаниеСтроковый тип данныхПредставление в памятиПонятие строкиИндексация строкиВвод и вывод строки на экранПримерТип данных StringКонстанты типа StringПримерТип Char

Слайд 3Содержание
Функции, применяемые к порядковому типу Char
Пример использования функций
Тип Pсhar
Функции применяемые

к типу PСhar
Строки с завершающим нулем
Пример описания символьных массивов с

нулевой базой
Операции со строками
Операция конкатенация


СодержаниеФункции, применяемые к порядковому типу CharПример использования функцийТип PсharФункции применяемые к типу PСharСтроки с завершающим нулемПример описания

Слайд 4Содержание
Операция сравнения
Пример сравнения
Стандартные процедуры
Процедуры преобразования типов
Примеры
Стандартные функции
примеры

СодержаниеОперация сравненияПример сравненияСтандартные процедурыПроцедуры преобразования типовПримерыСтандартные функциипримеры

Слайд 5Строковый тип данных
Строковый тип данных – тип, который относится к

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

кодировка – ASCII) или 2 байта (если 16-разрядная кодировка – Unicode).
Количество символов в строке называется ее длиной. Длина строки может находиться в диапазоне от 0 до 255 (код ASCII). Один (нулевой) байт содержит значение текущей длины строки.
Строковый тип данныхСтроковый тип данных – тип, который относится к числу структурированных. Каждый символ занимает 1 байт

Слайд 6Представление в памяти

строки могут иметь достаточно существенный размер

(до нескольких десятков мегабайтов);
изменяющийся со временем размер – возникают трудности

с добавлением и удалением символов.

Представление в памяти  строки могут иметь достаточно существенный размер (до нескольких десятков мегабайтов);изменяющийся со временем размер

Слайд 7Понятие строки
Строка – это линейно упорядоченная последовательность
символов, принадлежащих конечному

множеству символов,
называемому алфавитом.
Синтаксис описания строк:


Пример:
Var Strl1: String[30];
Strl2:

String; { длина 255 }

VAR <имя>: STRING[<[max длина строки]>];

Понятие строкиСтрока – это линейно упорядоченная последовательность символов, принадлежащих конечному множеству символов, называемому алфавитом. Синтаксис описания строк:Пример:

Слайд 8Индексация
Символы внутри строки индексируются (нумеруются) от единицы. Обращение к отдельному

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

N[5], S[i], slovo[k+l].
Индекс может быть константой, переменной, выражением целого типа.
ИндексацияСимволы внутри строки индексируются (нумеруются) от единицы. Обращение к отдельному символу идентифицируется именем строки с индексом, заключенным

Слайд 9Ввод переменных и вывод их на экран
Переменные типа String выводятся

на экран посредством стандартных процедур Write и Writeln.
Ввод осуществляется с

помощью стандартных процедур Read и Readln.
Ввод переменных и вывод их на экранПеременные типа String выводятся на экран посредством стандартных процедур Write и

Слайд 10Пример

Пример

Слайд 11Примечание

Если при вводе задать символов больше, чем максимально

допустимо, то лишние символы будут проигнорированы.

Примечание  Если при вводе задать символов больше, чем максимально допустимо, то лишние символы будут проигнорированы.

Слайд 12Тип String
Для описания строковых переменных в Паскале существует предопределенный тип

String.


Пример:
Var s1: string[10];
s2: string[20];
smax: string;

Тип StringДля описания строковых переменных в Паскале существует предопределенный тип String.Пример: Var s1: string[10];s2: string[20];smax: string;

Слайд 13Константы типа String
При объявлении констант типа String используются типизированные и

нетипизированные константы.

Константы типа StringПри объявлении констант типа String используются типизированные и нетипизированные константы.

Слайд 14Пример объявления констант

Пример объявления констант

Слайд 15Тип char
Символьный тип Char принимает значения из упорядоченной последовательности символов.

Каждый символ имеет номер от 0 до 255 (код ASCII).
В

памяти под символьную константу отводится один байт, в который помещается код символа ASCII.


Если символ имеет графическое изображение, то он заключается в апострофы (‘A’), если это управляющий символ, то перед числом ставится # (#13)

Тип charСимвольный тип Char принимает значения из упорядоченной последовательности символов. Каждый символ имеет номер от 0 до

Слайд 16Функции, применяемые к порядковому типу Char

Функции, применяемые к порядковому типу Char

Слайд 17Pred(x1);
Возвращает предшествующий элемент относительно значения переменной x1
Succ(x1);
Возвращает последующий элемент относительно

значения переменной x1

Pred(x1);Возвращает предшествующий элемент относительно значения переменной x1Succ(x1);Возвращает последующий элемент относительно значения переменной x1

Слайд 18Пример использования функций
Задача. Написать программу, для считывания нажатия клавиши и

вывести на экран ее символьное значение, а также последующего и

предыдущего символов.
var
x1, x2, x3, x4: Char;
Begin
x1:=ReadKey;
writeln(x1);
x2:=Pred (x1); { Возвращает предшествующий элемент относительно значения х1 }
writeln(‘Pred=‘ ,x2) ;
x3:=Succ (x1); { Возвращает последующий элемент относительно значения переменной х1 }
writeln(‘Succ=‘ ,x3);
readln
End.
Пример использования функцийЗадача. Написать программу, для считывания нажатия клавиши и вывести на экран ее символьное значение, а

Слайд 19Операции со строками

Операции со строками

Слайд 20Операция конкатенации
Операция конкатенация (слияния, сцепления) применяется для соединения нескольких строк

в одну, обозначается знаком «+».
Операция сцепления применима для любых строковых

выражений, как констант, так и переменных.
Синтаксис описания:


Пример:
T:=‘Home’+’work’ ; {‘T=Homework’}

операнд1 + операнд2

Операция конкатенацииОперация конкатенация (слияния, сцепления) применяется для соединения нескольких строк в одну, обозначается знаком «+».Операция сцепления применима

Слайд 21Примечание

«Склеить» строки можно также при помощи функции:
Concat (Strl1, Strl2, Strl3);

- конкатенация.

Пример:
Var
S : String;
begin
S := Concat('ABC', 'DEF'); {Строка'ABCDEF' }
End.

Примечание«Склеить» строки можно также при помощи функции:Concat (Strl1, Strl2, Strl3); - конкатенация.Пример:VarS : String;beginS := Concat('ABC', 'DEF');

Слайд 22Операция отношения
Отношения происходит посимвольно слева направо: сравниваются коды соответствующих символов

до тех пор, пока не кончится одна из строк (или

обе сразу). В результате сравнения двух строк получается логическое значение (true или false).
Операция отношенияОтношения происходит посимвольно слева направо: сравниваются коды соответствующих символов до тех пор, пока не кончится одна

Слайд 23Отношения
Две строки называются равными, если они равны по длине и

совпадают посимвольно.
Синтаксис описания:


Оператор «больше» вычисляет числовое значение каждого из

операндов и затем производит их числовое сравнение. Если числовое значение операнда1 больше,чем операнда2, то результат операции 1 (т.е. "истина"), иначе равен 0 (т.е. "ложь").
Синтаксис описания:


Оператор «меньше» вычисляет числовое значение каждого из операндов и затем производит их числовое сравнение.
Синтаксис описания:

операнд1 = операнд2

операнд1 > операнд2

операнд1 < операнд2


Слайд 24Отношения
«Проверка включения». Операнд1 считается включенным в операнд2, если все его

элементы содержатся во втором. Обратное утверждение может быть и несправедливым.

Операции проверки включения обозначаются ‘<=’ и ‘>=’.
Синтаксис описания:


Операция «не равенство». Строки считаются равными (эквивалентными), если все элементы опернд1 присутствуют в опернд2 и наоборот. Если это не так, считается что множества не равные. Для операции неравенство используются символы ‘<>’.
Синтаксис описания:

операнд1 >= (<=) операнд2

операнд1 <> операнд2

Отношения«Проверка включения». Операнд1 считается включенным в операнд2, если все его элементы содержатся во втором. Обратное утверждение может

Слайд 25Примеры сравнения
‘стол’

Примеры сравнения‘стол’

Слайд 26Стандартные процедуры
Procedure ();
begin
{тело процедуры}
end;

Стандартные процедурыProcedure ();begin{тело процедуры}end;

Слайд 27DELETE(Str, n, m)
Из строки Str вырезает m символов начиная с

n позиции.
INSERT(Str1, Str2, n)
Вставляет строку Str1 в строку Str2

начиная с n-го символа. Первая строка не изменяется, вторая получает новое значение.

Удаление

Вставка

DELETE(Str, n, m)Из строки Str вырезает m символов начиная с n позиции. INSERT(Str1, Str2, n)Вставляет строку Str1

Слайд 28Процедуры преобразования типов
VAL (Str1, N, K)
STR (N, Str1)
Часто возникает необходимость

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

и строками применяются две процедуры

Переводит числовое значение N в строковое Str1. N - целое или вещественное.

Обратное действие. Переводит строковое значение в числовое. N – искомое число (целое или вещественное).

Процедуры преобразования типовVAL (Str1, N, K)STR (N, Str1)Часто возникает необходимость получить строковое представление числа и наоборот. Для

Слайд 29Процедуры для работы над строками
 

 

Примеры

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

Слайд 30Стандартные функции
function ():
тип_возвращаемого значения;
begin
{тело_функции}
end;

Стандартные функцииfunction ():тип_возвращаемого значения;begin{тело_функции}end;

Слайд 31Length(Str)
Определяет длину строки Str, т.е. количество символов в строке.
Длина

строки
Concat(s1, s2, …, sn)
Слияние строк
Выполняет слияние строк s1, s2,...,sn

в одну строку.
Length(Str)Определяет длину строки Str, т.е. количество символов в строке. Длина строкиConcat(s1, s2, …, sn) Слияние строкВыполняет слияние

Слайд 32




SetLength

Позволяет изменить длину строки

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

Пример:
Str:='Hello, world!';
SetLength(Str, 5); { Str = "Hello" }


Слайд 33Pos(Str1, Str2)
Поиск подстроки
Определяет позицию подстроки в строке. Результат этой функции

– целое число, эта функция определяет номер элемента с которого

начинается первое вхождение подстроки Str1 в строку Str2. Если вхождения нет, то значение функции равно 0.
Pos(Str1, Str2)Поиск подстрокиОпределяет позицию подстроки в строке. Результат этой функции – целое число, эта функция определяет номер

Слайд 34Копирует из строки Str m символов начиная с n позиции.

Исходная строка не меняется
COPY(Str, n, m)
Копирование

Копирует из строки Str m символов начиная с n позиции. Исходная строка не меняется COPY(Str, n, m)Копирование

Слайд 35Функции для работы над строками
 

Примеры

Функции для работы над строками Примеры

Слайд 36Тип PChar
Для работы со строками длиной более 255 символов в

язык Паскаль введен тип PChar, определяемый, как указатель на символ:
type


PChar =^Char;
Тип PCharДля работы со строками длиной более 255 символов в язык Паскаль введен тип PChar, определяемый, как

Слайд 37Функции применяемые к типу PChar

Функции применяемые к типу PChar

Слайд 38Function StrCat(Dest, Source: PChar): PChar;
Копирует строку Source в конец строки

Dest и возвращает указатель на начало Dest.
Function StrECopy(Dest, Source: PChar):

PChar;

Эта функция работает в точности как StrCat, но возвращает указатель на конец сцепленных строк, т.е. на терминальный ноль.

Function StrCat(Dest, Source: PChar): PChar;Копирует строку Source в конец строки Dest и возвращает указатель на начало Dest.Function

Слайд 39Function StrLCat(Dest, Source: PChar; MaxLen: Word): PChar;
Копирует символы строки Source

в конец строки Dest до тех пор, пока не будут

скопированы все символы или когда длина сцепленной строки Dest не достигнет MaxLen.
Возвращает указатель на сцепленную строку.

Function StrLower(Str: PChar): PChar;

Преобразует заглавные буквы строки Str к строчным и возвращает указатель на результат.

Function StrLCat(Dest, Source: PChar; MaxLen: Word): PChar;Копирует символы строки Source в конец строки Dest до тех пор,

Слайд 40Строки с завершающим нулем
Строки с завершающим нулем хранятся в виде

символьных массивов с нулевой базой (начинающихся с 0) и индексом

целого типа:
array[0..X] of Char;
где X – положительное ненулевое целое число.
Строки с завершающим нулемСтроки с завершающим нулем хранятся в виде символьных массивов с нулевой базой (начинающихся с

Слайд 41Примеры описаний символьных массивов с нулевой базой

Данные массивы могут использоваться

для хранения строк завершающихся нулем.

type
TIdentifier = array[0..15] of Char;
TFileName

= array[0..79] of Char;
TMemoText = array[0..1023] of Char;
Примеры описаний символьных массивов с нулевой базойДанные массивы могут использоваться для хранения строк завершающихся нулем.typeTIdentifier = array[0..15]

Слайд 42Дайте определение строкового типа даных.
Дайте определение понятия строки.
Как осуществляется индексацию

строк?
Как осуществляется вывод переменных типа String на экран?
Для чего служит

тип данных String?
Какие функции применяются к типу Char?
С какой целью введен тип PChar?
Какие функции применяются к типу PСhar?
Что такое строки с завершающим нулем?
Какие существуют операции со строками?
Какие существуют операции отношения?
Перечислите стандартные процедуры и функции для работы со строками.

Контрольные вопросы

Дайте определение строкового типа даных.Дайте определение понятия строки.Как осуществляется индексацию строк?Как осуществляется вывод переменных типа String на

Слайд 43 Список используемой литературы
Фаронов, В.В. Turbo Pascal: учебное пособие /

В.В. Фаронов. – М.: Изд.: ОМД Групп, 20010. – 368с.
Информатика:

базовый курс: учебник для вузов / О.А. Акулов, Н.В. Медведев
Немнюгин, С.А. Turbo Pascal: программирование на языке высокого уровня / С.А. Немнюгин. – 2-е изд. – СПб.: Питер, 2006. – 544с.
Марченко, А.И. Программирование в среде Turbo Pascal 7.0. / А.И. Марченко, Л.А. Марченко. – М.: Бином Универсал, К.: ЮНИОР, 2007. – 496с.
Культин, Н.Б. Turbo Pascal в задачах и примерах / Н.Б. Культин. – СПб.: БХВ-Петербург, 2009. – 160с.
Коффман, Э.М. Turbo Pascal / Э.М. Коффман. – 5-е изд. – М.: Вильямс, 2005. – 896с.

Список используемой литературы Фаронов, В.В. Turbo Pascal: учебное пособие / В.В. Фаронов. – М.: Изд.: ОМД

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика