- Учителю
- Конспект урока по теме 'Литерные величины в ЯП Паскаль'
Конспект урока по теме 'Литерные величины в ЯП Паскаль'
Тема «Алгоритмы работы с литерными величинами. Операции над литерными величинами»
Цель: ввести понятие «символьные величины», «строковые величины»; изучить функции и процедуры для работы с символами и строками; сформировать навыки разработки программ с использованием строковых величин.
Наряду с числовой информацией в Паскале используется алфавитно-цифровая или символьная информация, которая включает в себя заглавные, строчные буквы, цифры от 0 до 9 и вспомогательные символы. Для описания символьных переменных используется тип данных CHAR или STRING.
Символьный тип данных
Значением переменной типа Char может быть любой символ, используемый в компьютере. Он должен соответствовать одному из кодов ASCII. Каждый символ изображается целым числом в интервале от 0 до 255 на основании кода ASCII. Символы, соответствующие кодам от 0 до 127, являются универсальными знаками. К ним относятся латинские буквы, знаки препинания и арифметических операций, а также символы управления. Символьной (или литерной) переменной отводится один байт памяти компьютера.
Если в программе задано следующее описание:
var a, b: char;
znak, symbol: char;
то в операторе присваивания значениями этих переменных и констант должен быть один символ, взятый в апострофы.
Например:
a:='k'
b:='A'
c:='5'
x:=';'
Строковый тип данных
Величины, значениями которых являются тексты, называются литерными.
Строка - последовательность из определенного количества символов. Количество символов в строке называется длиной строки. Длина строки не превышает 255 символов.
Описание литерных величин
Строкам символов в Паскале соответствует тип string.
Строковая переменная в языке программирования Паскаль описывается следующим образом:
Var <�����������������������������������
����������������
������������
����������
����������
����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
��������������������������������������������������������������
����������
����чаю языки программирования'
'123459687'
'abcdifghijklmnopqrstuvwxyz'
Доступ к элементам строки
Символы в строке упорядочены, каждый из них имеет порядковый номер, начиная с первого. Имеется возможность обратиться к любому элементу строки, указав его номер, так же как это делается в одномерных массивах. Например:
Если s:='Привет, Коля!', то
s[1]= 'П'
s[4]= 'в'
s[8]= ' '
Таким образом, для доступа к отдельному элементу строки необходимо указать имя этой строки и номер элемента в [ ].
Выполни практическое задание 1.
Операции над строками.
Над строковыми величинами допустимы операции отношения и сцепления (конкатенация).
Операции отношения (=, <>, >, <, <=, >=) проводят сравнение двух строк и имеют приоритет более низкий, чем операция конкатенации. Сравнение строк производится слева направо до первого несовпадающего символа. Строка считается больше, если в ней первый несовпадающий символ имеет больший номер в таблице кодов.
Например:
'MS-DOS'<�'MS-Dos'.
Если строки имеют различную длину, но в общей части символы совпадают, то более короткая строка меньше.
Например:
'Компьютер'<�'Компьютер '.
Строки равны, если они полностью совпадают.
Например:
'Маска' = 'Маска'.
Выполни практическое задание 2.
Операция конкатенации (сцепления). Обозначается знаком +, применяется для соединения нескольких строк в одну строку. Сцеплять можно и константы, и переменные. Длина результирующей строки не должна превышать 255 символов.
Например:
var a, b: string;
begin
a:='пар';
b:='ус';
writeln(a+b);
end.
Выполни практическое задание 3.
Стандартные процедуры и функции работы со строками
Определение длины строки
Вычисление текущей длины строки производится с помощью функции Length. Ее общий вид следующий: Length (<�������������������������
����������������������������������������������������������������
����������������������������������������
����������
�������
������������������������������
����������������
end.
значение целой переменной k будет равно 11.
Копирование фрагмента строки
Для копирования строк или их фрагментов используется функция Copy.
Ее общий вид:
Copy (<����������������������������������
����������
����������
�������
����������ала';
writeln(copy(a,4,4));
end.
Удаление фрагмента строки
Для удаления из строки фрагмента используется процедура Delete, общий вид которой следующий:
Delete(<����������������������������������������
Процедура удаления является самостоятельной командой и не может быть присвоена другой переменной или выведена на экран.
Например:
var a: string;
begin
a:='значение';
delete(a,4,2);
writeln(a);
end.
Вставка подстроки
Для вставки символов в строку используется процедура Insert. Ее общий вид следующий:
Insert (<�������������������������������
Процедура вставки является самостоятельной командой.
Например:
var a: string;
begin
a:='гость';
insert('р',a,3);
writeln(a);
end.
Поиск подстроки в строке
Для определения позиции подстроки в строке используется функция Pos, общий вид которой следующий: Pos(<подстрока>, <строка>):Integer
Результат этой функции целое число. Оно определяет номер элемента, с которого начинается первое вхождение подстроки в строку.
Если подстрока в строку не входит, то значение функции равно нулю.
Например, при выполнении конструкции
Например:
var k: integer;
begin
k1:=Pos('BC','ABCD');
writeln(k);
end.
значение переменной k1 равно 2, так как функция Pos определяет номер элемента, с которого подстрока первый раз встречается в строке.
Итак, в ходе изучения данного материала Вы познакомились с понятием символьной величины, строковой величины; рассмотрели функции и процедуры для работы с символами и строками; разобрали примеры программ с использованием строковых величин.
Контрольные вопросы по теме:
-
Какие типы данных используют для описания литерных переменных?
-
Как можно объявить величину строкового типа?
-
Как осуществляется доступ к отдельному символу строки?
-
Какова максимально возможная длина строки?
-
Расскажите об операциях, которые можно выполнять над строковыми величинами.
-
Расскажите о функциях, определенных для величин строкового типа.
-
Может ли быть результатом функции length число 325?
-
Расскажите о процедурах, определенных для величин строкового типа.