русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Обращение к записям


Дата добавления: 2013-12-23; просмотров: 1195; Нарушение авторских прав


Record

Объявление записи

Записи

Вопросы для самопроверки

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

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

Length(s) Возвращает длину строки s
Delete(s, Index, Count) Удаляет в строке s Count символов, начиная с позиции Index
Insert(Substr, Dest, Index) Вставляет в строку Dest подстроку Substr с позиции Index
Pos(Substr, s) Возвращает позицию подстроки Substr в строке s либо 0, если Substr не входит в s
Copy(s, Index, Count) Возвращает подстроку строки s, Count символов, начиная с позиции Index

Пример: работа со строками

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;



<== предыдущая лекция | следующая лекция ==>
Операции над строками | Инициализация записи


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.