КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Обращение к записям
Record Объявление записи Записи Вопросы для самопроверки Процедуры и функции для работы со строками Для работы со строками в языке программирования Паскаль включены процедуры и функции, которые обеспечивают редактирование и преобразование строк.
Пример: работа со строками readln(s); s:=s+‘,_’+s+’!!!’; writeln(s); Пример: вывод всех символов строки s по отдельности readln(s); for i:=1 to length(s) do writeln(s[i]); 1. Как описываются строки в языке Паскаль? 2. Чем различаются строки фиксированной и переменной длины? 3. Какие операции допустимы над строками? 4. Какие процедуры и функции для работы со строками Вы знаете? 5. Что возвращает функция Length(s)? 6. Назовите основные отличия строки от массива символов. Записи, как и массивы, являются структурами прямого доступа, однако, в отличие от последних, могут хранить элементы различных типов данных. Таким образом, запись – это вектор, компоненты которого могут относиться к разным типам данных. Запись представляет собой совокупность ограниченного числа логически связанных компонент, принадлежащих к разным типам. Компоненты записи называются полями, каждое из которых определяется именем. Поле записи содержит имя поля, вслед за которым через двоеточие указывается тип данных этого поля. Поля записи могут относиться к любому типу, допустимому в языке Паскаль. Имена полей должны быть уникальны в пределах записи, но могут совпадать с именами переменных, описанных за пределами записи. Описание записи в языке Паскаль осуществляется с помощью служебного слова Record, вслед за которым описываются поля записи. Завершается описание записи служебным словом end: <имя поля 1>: <тип данных поля 1>; [ <имя поля 2>: <тип данных поля 2>; ] [ … ] [ <имя поля n>: <тип данных поля n>; ] end; Так же, как и при описании переменных в разделе var, если несколько полей имеют одинаковый тип, то их описания можно объединить. Например, записная книжка содержит фамилии, инициалы и номера телефона, поэтому отдельную строку в записной книжке удобно представить в виде следующей записи: Пример: записная книжка – описание в разделе type type TRow=Record FIO: String[20]; TEL: String[7] end; var str: TRow; Так, выше описана запись, содержащая два поля – FIO и TEL. Описание записей возможно и без задания имени типа (в таком случае запись описывается в разделе var непосредственно после имени переменной). Пример: записная книжка – описание в разделе var var str: Record FIO: String[20]; TEL: String[7] end; Обращение к записи в целом допускается только в операторах присваивания, где слева и справа от знака присваивания используются имена записей одинакового типа. Пример: присваивание одной записи другой var X, Y: TRow; … X:=Y; Y:=X; Во всех остальных случаях оперируют отдельными полями записей. Чтобы обратиться к отдельной компоненте записи, необходимо задать имя записи и через точку указать имя нужного поля. Такое имя называется составным. Пример: обращение к полям записи str.FIO, str.TEL Компонентой записи может быть другая запись. В таком случае составное имя будет содержать не два, а большее количество имен. Пример: запись как поле записи (окружность) type TPoint = record x, y: real; end; TCircle = record center: TPoint; radius: real; color: integer; end; var Circle: TCircle; … Circle.color:=0; readln(Circle.radius); Circle.center.x:=10; Circle.center.y:=5.5;
Дата добавления: 2014-01-06; Просмотров: 271; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |