RSS    

   Вопросы и ответы к экзаменам В-1 - (шпаргалка)

p>Значением строкового типа является любая последовательность символов, т. е. строка. Окончанию строки соответствует символ с кодом 0, и которые называются строками с завершающим нулём или ASCIIZ-строками.

Строковый тип соответствует идентификаторам string и PChar. A: array[0...n] of char = a: string

    Ord(0)=length(a)- длинна строки(не больше 255 символов)
    Concat (S1 [s2 ..., SN])- сцепление строк

Copy (St, index, count) – копирует из строки ST символ, начиная с index Delete(ST, a, b) – удаление b символов начиная с a

    Insert (sut, st, b)–вставляет SUT в ST начиная с b
    Pos (Sut, St) - в строке ST отыскивает Sut если нет 0

Str (X [WIDTH [: DECIMALS]], ST)- из вещественного или целого в строку Val (st , x, code) – обратно str (пробелы не допускаются)

    Var s: string;
    Begin
    …….
    S: = ’dsfsdhfjhsdfjshdfjsd’;
    ……….
    End.

29. Типы в Турбо-Паскале. Объявление новых типов. Порядковые типы. Изменение типа выражения

    Стандартные типы в ТП:

1 группа целых типов(ShortInt, integer, LongInt, Byte, Word); 2 группа вещественных типов(Single, real, Double, Extended, Comp); 3 группа Булевские типы (Boolean, ByteBool, WordBool, LongBool); 4 Символьный тип(Char);

    5 Строковые типы(String, PChar);
    6 Указательный тип (Pointer);
    7 Текстовый тип (Text);
    Type =

Символьный тип, а также целые и булевские типы относятся к порядковым типам. Свойства:

    1 Каждый элемент имеет свой порядковый номер

2 Поэтому возможен использование функцииOrd, возвращающей этот номер 3 Возможно применить функцию Pred и Succ которые верну соответственно предыдущее и последующее значения

    30. Целые типы. Правила объявления. Применяемые функции.
    Целые типы:

Byte 0...255 ShortInt –128...127 Word 0...65535 Integer –32768...32767 LongInt –2147483648... 2147483647

    Вложение типов:
    Type result = более мощный тип
    A: integer;
    LongInt(a);
    Процедуры и функции:
    ABS(X) CHR(X) DEC INC SQR HI(I)-старший байт

LOW(X) – младший байт ODD(I) – возвращает правда если нечет RANDOM(x) SWAP(I)- меняет местами байты

    31. Логический тип. Логические операции и функции
    Логический тип ещё называют булевским. Их 4:

Boolean(false=0, 1 байт); ByteBool (false=0, 1 байт); WordBool (false=0 в обоих байтах, 2 байта); LongBool (false=0 во всех байтах, 4 байта). Логические функции:

    Ord; Pred; Succ; or ; and ; xor ;

32. Перечисляемые типы. Функции и операции, применимые к ним. Перечисляемый тип задаётся тем значениям, которые он может получить. Значения именуются идентификаторами и располагаются в списке с ( ).

    Type col = (red, white, blue);
    Max=65536 значений;
    Ord (red) =0;
    Var c: col;
    C: = col(0);
    С: =red;

В идентификаторах нельзя использовать кириллицу. Переменные так же можно объявлять без предварительного описания типа

    Var col: (black, white, green);
    33. Множества и операции над ними.

МНОЖЕСТВА - наборы однотипных логически связанных друг с другом объектов. Характер связей между объектами подразумевается лишь программистом и не контролируется Турбо Паскалем. Количество элементов в множестве может меняться от 0 до 255. Множество, которое не содержит элементов, называется пустым. От массивов множества отличаются тем, что количество элементов в нем не постоянно. Его можно расширять и сокращать по ходу выполнения программы. Описание типа производится в разделе TYPE.

    Структура:
    =SET of ;

где - правильный идентификатор Турбо Паскаля; - тип элементов множества, в качестве которого может использоваться любой порядковый тип, кроме WORD, Integer, LogInt, ShortInt.

пример: TYPE dchar=SET of '1'...'9'; {базовый символьный тип-диапазон} digit=SET of 0...9;

    Переменные этого типа описываются в разделе
    VAR S1, S2, S3: dchar; S4, S5, S6, S7: digit;

Для задания множества может использоваться конструктор множества: список (спецификаций) элементов множества, отделенных друг от друга запятыми; список заключается в квадратные скобки. Спецификациями элементов м. б. константы или выражения базового типа, а также пример:

    S1: =['1', '2', '3']; S4: =[0...3, 7];
    S2: =['2', '1', '3']; S5: =[4, 6];

S3: =['1', '2']; S6: =[3...8]; S7: =[]; (пустое) Два множества считаются эквивалентными тогда и только тогда, когда все их элементы одинаковы причем порядок следования в множестве их безразличен. (S1 и S2 эквивалентны). Если все элементы одного множества входят в другое множество то говорят, что первое включено во второе. (S3 включено в S1). Пустое множество включено в любое другое.

    Над множествами определены следующие операции:

1. * пересечение множеств; результат содержит элементы, общие для обоих множеств. (S4*S6 содержит [3, 7]; S4*S5 образует пустое мн. ). 2. + объединение множеств, результат содержит элементы первого множества, дополненные недостающими элементами второго.

S4+S5 содержит [0, 1, 2, 3, 4, 6, 7] S5+S6 содержит [3, 4, 5, 6, 7, 8] 3. - разность множеств, результат содержит элементы из первого множества, которые не принадлежат второму.

    S6-S5 содержит [3, 5, 7, 8])
    S4-S5 содержит [0, 1, 2, 3, 7]) []-S4 даст [].
    4. Операции отношений:

= операция эквивалентности; возвращает значение TRUE, если оба множества эквивалентны; (S1: =S2; ['1', '2', '3']) =['2', '3', '1'] проверка неэквивалентности; (TRUE, если множества неэквивалентны); [1, 2]<>[1] S3<>S2

>= проверка вхождения (TRUE, если второе множество входит в первое; in - проверка принадлежности. Структура этой бинарной операции: in ; возвращает TRUE, если выражение имеет значение, принадлежащее множеству. пример:

    3 in S6 TRUE; [] in [0...5] [] in S5
    2*2 in S4 FALSE;

Множества имеют компактное машинное представление. Недостаток: невозможность вывода множества на экран, т. к. отсутствует механизм изъятия элемента из множества. Ввод множества возможен только поэлементно.

    пример: Можно тип объявлять при описании переменных
    VAR S: SET of char; {переменная-множество}
    C: char; {элемент множества}
    Begin
    S: =[]; S: =#0; {обнуление значений}
    while C '. ' do {цикл до ввода ". "}
    begin
    readln(C); {чтение символа в с}
    S: =S+[C]; {добавление его к S}
    end; ....
    S: =S-['. ']; {исключение точки}
    End. {Смотри задание на л. р. N 12 }
    34. Оператор выбора CASE (варианта). Комментарии.
    CASE OF
    Const1: оператор;
    Const2: оператор;
    ELSE: оператор;
    END;
    35. Записи. Вложенные записи. Записи с вариантами.

Запись –это структура данных, состоящая из фиксированного числа компонент, называемых полями записи. В отличие от массива компоненты могут быть различного типа. Поля именуются:

    =RECORDEND.
    Type
    Bd = record
    D, m: byte;
    Y: word
    Var a, b: bd;
    a: :=8;
    a. day: =27; -доступ к компоненту

Для упрощения доступа к полям записи используют оператор записи With Withdo;

    With c. bp do month: =9;
    With c do with bp do month: =9;
    c. bp. month: =9;
    Вариантные поля
    Type f= record
    N: string;
    Case byte of
    0: (bp: string[30]);
    1: (c: string[10], e: string[20], ed: 1...31)
    end;

Имена должны быть уникальны, хотя возможно повторение на различных уровнях Вложенные поля:

    Type bd =record
    D, m: byte;
    X: word;
    End;
    Var c: record;
    Name: string;
    Db: bd;
    Begin if c. db. year=1939 then………...
    End.
    В качестве ключа переменная:
    Type rec2=record
    C: LongInt;
    Case x: byte of
    1: (d: word);
    2: (e: record
    case boolean of
    3: (f: real);
    3: (g: single);
    ‘3’: (c: word);
    end;
    end;

Страницы: 1, 2, 3, 4, 5, 6


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.