Курс «Информатика» Лекция 8 Составитель: Иванчева Н.А.

Презентация:



Advertisements
Похожие презентации
Символы и строки. Процедуры и функции работы со строками.
Advertisements

СТРОКИ В ПАСКАЛЕ. Строкой в Паскале называется последовательность из определенного количества символов. Количество символов последовательности называется.
Строковый тип данных. Для обработки строковой информации в Турбо Паскаль введен строковый тип данных. Строка - последовательность из определенного количества.
Строковые константы записываются как последовательности символов, ограниченные апострофами. Пример: 'Текстовая строка' Пустой символ обозначается двумя.
Курс «Информатика» Лекция 3 Составитель: Иванчева Н.А.
Для работы с группой различных по типу данных, в системе программирования Turbo Pascal применяют тип данных "запись".
Чувашия, с.Моргауши, МБОУ "Моргаушская СОШ" - Павлинова Раиса Мефодьевна, г. Тема: Паскаль «строковые переменные». Обработка строк текста МБОУ.
Основы алгоритмизации и программирования Чабанюк Виктория 10 класс.
Обработка символьных величин. Цели урока Познакомиться с основными принципами работы с символьными величинами Познакомиться с основными принципами работы.
С ИМВОЛЬНЫЕ И С ТРОКОВЫЕ ВЕЛИЧИНЫ. О ГЛАВЛЕНИЕ Символьные и Строковые величины Сравнение переменных Сложение переменных Функция Concat Функция Concat.
Символьные и Строковые величины. СИМВОЛЬНЫЕ И СТРОКОВЫЕ ВЕЛИЧИНЫ Для работы с символами, словами и предложениями в Паскале существуют типы данных – CHAR.
Строки – последовательность символов, к которой можно обращаться как к единому целому и к каждому элементу по отдельности. Строка.
Понятие строки. Операции со строковыми величинами. Стандартные процедуры и функции обработки строковых величин. Простые алгоритмы работы со строками на.
Строки символов Строка в Паскале – упорядоченная последовательность символов. Количество символов в строке называется ее длиной. Длина строки в Паскале.
«Обработка строковых данных» Delphi. Тема 7:7: «Обработка строковых данных» План темы: 1. Понятие символа и строки. 2. Описание символов и строк в программе.
Компьютеры могут обрабатывать данные различных типов. Вам уже приходилось иметь дело с числовыми типами данных: целым и вещественным. Не менее широко.
Лекция 4 Программирование на Паскале. Элементы языка Турбо Паскаль 7.0. Типы данных. Управляющие конструкции.
Работа со строковыми типами данных. Строка – упорядоченная последовательность символов. Строковая константа – последовательность символов, заключенных.
Ваш логотип. В баскетбольную команду могут быть приняты ученики, рост которых превышает 170 см. Составьте список кандидатов в команду из учеников класса.
СТРОКОВЫЙ ТИП ДАННЫХ Строка это последовательность символов. Каждый символ занимает 1 байт памяти ( код ASCII). Количество символов в строке называется.
Транксрипт:

Курс «Информатика» Лекция 8 Составитель: Иванчева Н.А.

Лекция 8 Тема лекции: Символы и строки. Записи

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

Список использованных источников 1. Материалы Единой Коллекции ЦОР ( : ( : Ресурсы по информатике Ивановского «Учебно- методического центра информатизации и оценки качества образования» Ресурсы по информатике Ивановского «Учебно- методического центра информатизации и оценки качества образования» Ресурсы по информатике Ивановского «Учебно- методического центра информатизации и оценки качества образования» Ресурсы по информатике Ивановского «Учебно- методического центра информатизации и оценки качества образования» Ресурсы по информатике Хабаровской краевой заочной физико-математической школы Ресурсы по информатике Хабаровской краевой заочной физико-математической школы Ресурсы по информатике Хабаровской краевой заочной физико-математической школы Ресурсы по информатике Хабаровской краевой заочной физико-математической школы 2. Прочие источники: 1. В.В.Фаронов «TurboPascal 7.0» начальный курс учебное пособие. «Нолидж», 1998 г. 1. В.В.Фаронов «TurboPascal 7.0» начальный курс учебное пособие. «Нолидж», 1998 г. 2. Т.А.Андреева «Программирование на Паскале» 2. Т.А.Андреева «Программирование на Паскале» ( ) ( )

Строковый тип данных Строковый тип данных предназначен для обработки строковой информации. Строка в Паскале - это последовательность из определенного количества символов. Длина строки – это количество символов в последовательности Максимально возможная длина строки - целое число в диапазоне Объявление строковой переменной: var s: string[n]; var s: string; Если параметр n опущен, то по умолчанию он принимается равным 255.

Объявление строковой константы: записываются как последовательности символов, ограниченные апострофами. Пример: 'Текстовая строка Допускается формирование строк с использованием записи символов по десятичному коду в виде комбинации # и кода символа #54#32#61 или управляющих символов комбинации ^ и некоторых заглавных латинских букв. 'abcde'^A^M Пустой символ обозначается двумя подряд стоящими апострофами. Если апостроф входит в строку как литера, то при записи он удваивается.

Переменные, описанные как строковые с разными максимальными длинами, можно присваивать друг другу. При попытке присвоить короткой переменной длинную лишние символы будут отброшены. Выражения типа char можно присваивать любым строковым переменным. В Паскале имеется простой доступ к отдельным символам строковой переменной: i-й символ переменной st записывается как st[i]. Например, если st - это 'Строка', то st[1] - это 'С', st[2] - это 'т', st[3] - 'р' и так далее.

Над строковыми данными допустима операция слияния (конкатенации), обозначаемая знаком +. Например: a := 'Turbo'; b := 'Pascal'; c := a + b; В этом примере переменная c приобретет значение 'TurboPascal'.

Кроме операции соединения строк (конкатенации) над строками определены операции сравнения <,>,=,<>,<=,>= Две строки сравниваются посимвольно, слева направо, по кодам символов. Если одна строка меньше другой по длине, недостающие символы короткой строки заменяются символом с кодом 0.

Стандартные процедуры и функции для работы со строками Length(s:string):integer Функция возвращает в качестве результата значение текущей длины строки-параметра Пример. n := length('Pascal'); {n будет равно 6} n := length('Pascal'); {n будет равно 6}

Concat(s1,[s2,...,sn]:string):string Функция выполняет слияние строк-параметров, которых может быть произвольное количество. Каждый параметр является выражением строкового типа. Если длина строки-результата превышает 255 символов, то она усекается до 255 символов. Данная функция эквивалентна операции конкатенации «+», но работает немного менее эффективно, чем эта операция.

Copy(s:string; index:integer; count:integer):string Функция возвращает подстроку, выделенную из исходной строки s, длиной count символов, начиная с символа под номером index. Пример. s := 'Система Turbo Pascal'; s2 := copy(s, 1, 7); {s2 будет равно 'Система'} s3 := copy(s, 9, 5); {s3 будет равно 'Turbo'} s4 := copy(s, 15, 6); {s4 будет равно 'Pascal'} s4 := copy(s, 15, 6); {s4 будет равно 'Pascal'}

Delete(var s:string; index,count:integer) Процедура удаляет из строки-параметра s подстроку длиной count символов, начиная с символа под номером index. Пример. s := 'Система Turbo Pascal'; delete(s,8,6); {s будет равно 'Система Pascal'}

Insert(source:string; var s:string;index:integer) Процедура предназначена для вставки строки source в строку s, начиная с символа index этой строки. Пример. s := 'Система Pascal'; insert('Turbo ',s,9); {s будет равно 'Система Turbo Pascal'}

Pos(substr,s:string):byte Функция производит поиск в строке s подстроки substr. Результатом функции является номер первой позиции подстроки в исходной строке. Если подстрока не найдена, то функция возвращает 0. Пример. s := 'Система Turbo Pascal'; x1 := pos('Pascal', s); {x1 будет равно 15} x2 := pos('Basic', s); {x2 будет равно 0}

Str(X: арифметическое выражение; var st: string) Процедура преобразует численное выражение X в его строковое представление и помещает результат в st.

Val(st: string; x: числовая переменная; var code: integer) Процедура преобразует строковую запись числа, содержащуюся в st, в числовое представление, помещая результат в x. x - может быть как целой, так и действительной переменной. x - может быть как целой, так и действительной переменной. Если в st встречается недопустимый (с точки зрения правил записи чисел) символ, то преобразование не происходит, а в code записывается позиция первого недопустимого символа.

При работе со строками используются некоторые функции, связанные с типом char. При работе со строками используются некоторые функции, связанные с типом char. Chr(n: byte): char Функция возвращает символ по коду, равному значению выражения n. Если n можно представить как числовую константу, то можно также пользоваться записью #n. Если n можно представить как числовую константу, то можно также пользоваться записью #n.

Ord(ch: char): byte; В данном случае функция возвращает код символа ch. В данном случае функция возвращает код символа ch. UpCase(c: char): char; Если c - строчная латинская буква, то функция возвращает соответствующую прописную латинскую букву, в противном случае символ c возвращается без изменения.

Примеры заданий: 1. Определить и вывести на экран длину введенной пользователем строковой величины. Program Str1; Var S : String; Begin Writeln('Введите последовательность символов'); Readln(S); Writeln('Вы ввели строку из ',Length(S), ' символов'); End.

2. Введенную строку вывести на экран по одному символу в строке экрана. Program Str2; Var S : String; I : Byte; S : String; I : Byte;Begin Writeln('Введите строку'); Readln(S); For I:=1 to Length(S) do Writeln(S[I]); End.

3. В строке заменить все вхождения подстроки 'ABC' на подстроку 'KLMNO'". Program Str6; Var S : String; A: Byte; S : String; A: Byte;Begin Writeln('Введите строку'); Readln(S); While Pos('ABC',S)<>0 Do Begin A:= Pos('ABC',S); Delete(S,A,3); Insert('KLMNO',S,A) End; Writeln(S) End.

Записи Запись - это совокупность ограниченного числа логически связанных компонент, принадлежащих к разным типам. Компоненты записи называются полями, каждое из которых определяется именем. Поле записи содержит имя поля, вслед за которым через двоеточие указывается тип этого поля. Поля записи могут относиться к любому типу, допустимому в языке Паскаль, за исключением файлового типа.

Описание записи начинается со слова record record вслед за которым описываются компоненты записи. Завершается описание записи служебным словом end end

type TRec = Record {запись в телефонном справочнике} FIO: String[20]; TEL: String[7] end;var rec: TRec; var rec: Record FIO: String[20]; TEL: String[7] end;

Обращение к полю записи: имя записи.имя поля записи например:rec.FIOrec.TEL Обращение к записи в целом допускается только в операторах присваивания, где слева и справа от знака присваивания используются имена записей одинакового типа.

К компонентам записи можно обратиться, используя оператор with with rec do оператор; { rec - имя записи} with rec do begin FIO:='Иванов А.А.'; TEL:=' ';end;

Записи с вариантами Предназначены для хранения структур данных, имеющих большую общую часть, одинаковую во всех структурах, и некоторые небольшие отличающиеся части. Записи вариантами объявляются с использованием зарезервированного слова case.

Пример записи с вариантами, позволяющей хранить данные о некоторой геометрической фигуре (отрезок, треугольник, окружность). typeTFigure = record type_of_figure: string[10]; color_of_figure: byte;... case integer of... case integer of 1: (x1,y1,x2,y2: integer); 2: (a1,a2,b1,b2,c1,c2: integer); 3: (x,y: integer; radius: word); end; var figure: TFigure;

В любой записи может быть только одна вариантная часть. После окончания вариантной части в записи не могут появляться никакие другие поля. Имена полей в пределах той записи, где они объявлены, должны быть уникальны.

Контрольные вопросы Что в Паскале называется строкой? Что в Паскале называется строкой? Какой длины может быть строка? Какой длины может быть строка? Как в программе объявить строковую переменную, константу? Как в программе объявить строковую переменную, константу? Как получить доступ к отдельному символу строковой переменной? Как получить доступ к отдельному символу строковой переменной? Что такое конкатенация? Что такое конкатенация? Какие операции определены над строками? Какие операции определены над строками? Приведите примеры стандартных строковых функций. Приведите примеры стандартных строковых функций.

Что такое запись? Компоненты записи? Что такое запись? Компоненты записи? Как можно обратиться к полю записи? Как можно обратиться к полю записи? Как описать запись в программе? Как описать запись в программе? Как с компонентами записи работает оператор with ? Как с компонентами записи работает оператор with ? Что такое записи с вариантами? Что такое записи с вариантами?