
- •1. Типы в Турбо-Паскале. Объявление новых типов. Порядковые типы.
- •2.Структура программы в тп.
- •3. Подпрограммы. Применение. Структура описания. Отличие процедуры от функции.
- •4. Вложенные подпрограммы
- •5. Вызов подпрограмм (формальные и фактические параметры).
- •6.Процедуры без параметров и с параметрами.
- •7.Передача в подпрограмму параметров- массивов и параметров-строк
- •8. Функции
- •9. Рекурсия
- •10. Символьный тип
- •17. Процедурные типы
- •11. Строковый тип
- •12.Множества
- •13. Записи
- •14. Файлы
- •15. Текстовые файлы
- •16. Типизированные и нетипизированные файлы
- •18.Указатели и динамическая память
- •19. Среда тп. Основные выполняемые функции. Система меню.
- •20. Модули
- •21. Структуризация. Восходящее программирование.
- •22. Нисходящее программирование.
- •23.Этапы подготовки и решения задач на эвм.
- •24. Тестирование программных средств из одного модуля.
- •25. Межмодульное тестирование программных средств.
- •27. Диалоговые программы
- •28. Жизненный цикл программы.
- •31. Возможности Norton Commander.
- •32.Компиляция программы
- •34. Динамические структуры данных. Очередь.
- •35. Однонаправленные списки.
- •36.Стек. Дек.
- •37. Двунаправленные списки.
- •38. Среда delphi.
11. Строковый тип
Тип динамических строк используется для обработки текстовой информации. Строка представляет собой цепочку символов. В программе строковая переменная может быть описана в блоках Туре или Var. Максимальная длина строки - 255 символов. Строка имеет структуру подобную одномерному массиву. Отличие между строкой типа string и массивом состоит в том., что строка имеет переменную длину (количество символов) и нулевой элемент строки содержит информацию о длине строки. Строки можно присваивать и сравнивать. Строки считаются одинаковыми, если они имеют одинаковую длину и одинаковые символы. К строкам применима операция сцепления. Встроенные функции и процедуры для обработки строк: LENGTH(s:string):byte - выдает длину строки в символах. CONCAT(sl,s2,...,sN:string):string-осуществляет сцепление строк. COPY(S: string; Start,Len:integer):string выдает подстроку s длиной Len, начиная с символа с номером Start. DELETE(Var S:string; Start, Len: integer) удаляет из строки S подстроку длиной Len, начиная с символа с номером Start.
INSERT(Subs:string; Var S: string; index:integer) вставляет в строку S подстроку Subs, начиная с символа с номером index;
POS(Subs,S:string):byte - отыскивает вхождение подстроки Subs в строке S и выдает номер позиции, с которой начинается это вхождение. Если строка s не содержит данной подстроки, то функция РОS выдает О. Если в строке s несколько одинаковых подстрок subs, то функция выдает только номер первого вхождения. Процедуры преобразования: STR(xt:w[:n]], Var s:string) - преобразует числовое значение х в строковое s, х может быть переменной или выражением целого или вещественного типа. Для переменной х может быть указана ширина поля w, которое она занимает, а также n - количество знаков после десятичной точки. VAL(S:string,Var x,Var Errcod)- преобразует числовую строку S в числовую переменную х, формируя код ошибки errcod. FILLCHAR(var x; k:word; Value) – процедура заполнения к последовательных байт переменной х значением Value.
12.Множества
Множества - наборы однотипных логически связанных друг с другом объектов. Количество элементов в множестве может меняться от 0 до 256. Множество, которое не содержит элементов, называется пустым. От массивов множества отличаются тем, что количество элементов не постоянно. Его можно расширять и сокращать по ходу выполнения программы. Описание типа производится в разделе ТУРЕ в следующем виде:
<ИмяТипа>=SЕТ of <базовый_тип>.
Можно тип объявлять сразу при описании переменных, например:
VAR SI: set of '1'..'9';
Для задания множества может использоваться конструктор множества - список (спецификаций) элементов множества, отделенных друг от друга запятыми. Список заключается в квадратные скобки. Спецификациями элементов могут быть константы или выражения базового типа, а также тип-диапазон того же базового типа. Два множества считаются эквивалентными тогда и только тогда, когда все их элементы одинаковы причем порядок следования в множестве безразличен. Если все элементы одного множества входят в другое множество то говорят, что первое включено во второе. Пустое множество считается включенным в любое другое. Над множествами определены следующие операции: 1.Пересечение множеств (*) 2.Объединение множеств (+) 3.Разность множеств (-) 4.Операции отношений: операция эквивалентности (=), проверки неэквивалентности (<>),(>=), проверки принадлежности (in). Множества имеют компактное машинное представление. Недостатком данного типа является невозможность вывода множеств на экран, поскольку отсутствует механизм изъятия элемента из множества. Ввод множества возможен только поэлементно.