- •Вопрос 29. Ссылочный тип данных. Указатели.
- •Вопрос 30. Динамическая память.
- •Вопрос 31. Очередь.
- •Вопрос 39 Способы обхода дерева
- •Вопрос 3 Жизненный цикл программного продукта
- •Вопрос 32 Стек
- •Вопрос 37 Деревья
- •Вопрос 38 Идеально-сбалансированное дерево
- •Вопрос 40 Дерево поиска
- •Вопрос 45 Конструкторы Деструкторы
- •Вопрос 1 Основные этапы решения задач на эвм.
- •Вопрос 2 Критерии качества программы.
- •Вопрос 10 Тождественность и совместимость типов данных языка Object
- •Вопрос 12 Ввод-вывод информации средствами Delphi
- •Вопрос 34 Линейные динамические структуры данных. Двунаправленые списки.
- •Вопрос 13 Простые операторы языка Object Pascal
- •Вопрос 35 Линейные динамические структуры данных. Кольцевые списки.
- •Вопрос 36 Мультисписки
- •Вопрос 17 Массивы
- •Вопрос 18 Множества
- •Вопрос 11 Выражения и операции в языке Object Pascal.
- •Вопрос 16 Строковый тип данных
- •Вопрос 19 Тип данных запись
- •Вопрос 20 Записи с вариантами
- •Вопрос 43 Классы
Вопрос 16 Строковый тип данных
Строки представляют собой совокупность символов, заключенных в апострофы(‘abc’).Для объявления строкового типа в разделе описания используется слово string, где может быть указано макс кол-во символов в строке(string[20]). Если количество символов не указано, то оно равно 256. если в программе строковой переменной присвоено значение с большей длиной, то остальные символы строки игнорируются. Операции над строками: сравнение, сцепление. Строки сравниваются посимвольно, до первого несовпадающего символа, при этом количество символов в строке значения не имеет. Строка большая, если больше ее несоответствующий символ(‘abcdef’<’abcf’). Строки равны, если они равны по длине и все их символы совпадают. Все строковые типы совместны в операциях сравнения. Операция сцепления обозн «+», в результате получаем строку, полученную из соединяемых строк(‘petya-loh’). Символьный тип данных char совместим со строковым типом в операциях сравнения. Процедуры и функции для обработки строк: 1)Length(S)-вычисление длины строки S. 2)Concat(S1,S2,…,Sn)-сцепление строк. 3) Copy(S,p,n)-выделяет из строки S подстроку длиной n символов , начиная с позиции р. 4) Pos(S1,S2)-возвращает номер той позиции, где впервые в строке S2 встречается S1.
Вопрос 19 Тип данных запись
Это структурированный тип данных, состоящий из фиксированного количества элементов различных типов. Для объявления записи: Type имя типа=record;
имя поля 1:тип поля 1; имя поля n: тип поля n; end; var имя записи: имя типа; Пример: Type TStudent=Record FIO:string[20]; ball:byte; end var Student:TStudent; St:array [1..10] of TStudent.
1)К элементам записи можно обратиться через составное имя, состоящее из имен записи и имен поля, разделенных точкой а) Student.FIO:=’Смирнов А.Р.’; Student.Ball:=4; б)For i:= 1 to 10 do St[i].FIO:=Mem01.lines[i];
2)Использование оператора присваивания : with имя записи do имя поля:=значение;
a) with Student do begin FIO:= ’Смирнов А.Р.’; Ball:=4; end; б) with St[i] do FIO:=Mem01.lines[i];
Вложение записи: Запись содержащая поля типа запись, называется вложенной. 1) Type TSudent=Record FIO:string[20]; Ball:byte; Adress:record street:string[30]; house, kvar:integer; end; end. 2) Type Adress=Record street:string[30]; house, kvar:integer; end; TSudent=Record FIO:string[20]; Ball:byte; Adr:Adress;end; Доступ к полям вложенной записи 1) Student.Adress.house:=34; 2)Student.Adr.house:=34;
Присоединяем 1) with Student do with Adr do house:=34; 2) with Student.Adr do house:=34; 3) with Student do Adr.house:=34;
Вопрос 20 Записи с вариантами
Состоит из фиксированной и вариантной частей. Вариантная часть может быть только одна и должно быть объявлена после всех фиксированных полей. “Case..of”
Type имя типа=Record имя поля 1:тип поля 1; имя поля n:тип поля n; Case поле признака:тип of const.выбора1:(имя поля:тип); const.выбора n:(имя поля:тип); end;
Поле признака только порядковый тип и имена полей вариантной части должны быть различны. Type TPerson=record FIO:string[20]; Age:byte; case telephone:Boolean of true:(№-tel:integer); false:(S:string); end; var Person:array[1..20] of TPerson;
В записи может быть только одна вариантная часть, расположенная в конце записи. Имена полей должны отличатся хотя бы одним символом, даже если они встречаются в разных вариантах.