Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






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




STR1, STR2, STR3 – строковые переменные.

1. Удаление и вставка

DELETE (STR1, n, m);

Процедура, которая удаляет из строки STR1, подстроку длинной m, начиная с позиции n.

STR1:='Мышечка';

DELETE (STR1, 4, 2);

- Нулевой индекс при обращении с элементом строки хранит информацию о длине строки.

2. INSERT (STR1, STR2, n);

Эта процедура вставляет в строку STR1, подстроку STR2, начиная с позиции n.

STR1:='Мышка'; STR2:='еч';

INSERT (STR1, STR2, 4);

или INSERT (STR1, 'еч', 4);

Функции:

1. LENGTH (STR1): INTEGER;

2. Копирование: COPY (STR1, n, m);

Функция, которая выделяет из строки STR1, подстроку длиной m, начиная с позиции n.

3. CONCAT (STR1, STR2);

Конкатация – сцепление (сложение, объединение).

=STR1 + STR2

К переменным строкового типа применимы операции сравнения (=, , >, <,...)

Сравнение строк идет по кодам их символов. Строки называются равными, если они совпадают по фактической, а не по объявленной длине и состоят из одинаковых символов.

' abc ' < 'cba'

 

  1. STR (<число>, <размер>:<количество>, <строка>); - процедура, которая для заданного числа формирует представляющую его строку, указанного размера с заданным количеством знаков в дробной части, строка должна быть задана, как имя переменой, параметры, размер и количество могут отсутствовать.

Пример:

STR (19, 48: 5: 2, STR1);

Обратное преобразование осуществляется процедурой:

  1. VAl (<строка>, <число>, <номер>);

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

Пример:

STR1:='1011.01';

VAL (STR1, X, N);

Множеством значений CHAR являются символы, упорядоченные согласно таблице расширенного кода. Коды с 0 по 31 – служебные. Если нужно по коду получить символ используют функцию CHR:

CHR (<код>), или # код.

Пример:

а) CHR (98) = #98 = 'b'

б) операторы вывода:

WRITELN ('MOSCOW');

WRITELN ('MO', #115#99,'OW');

WRITELN (CHR(77), CHR(111), CHR(115), CHR(99), CHR(111), CHR(119));

WRITELN (#77#111#115#99#111#119);

Выдача звукового сигнала: WRITE(#7);

Обратное преобразование осуществляется с помощью функции ORD.

ORD (символ) =код;

Для целых чисел

ORD (5) = 5;

Функция UPCASE (<символ>); возвращает символ – латинскую букву в верхнем регистре или символ, если у него нет представления в верхнем регистре или букву кириллица.

Пример: a)Дана строка символов. Необходимо подсчитать общее количество символов + - *

PROGRAM PRIMER;

CONST N=10;

VAR S: STRING [ N ];

I, M: INTEGER;

BEGIN

READLN (S); M:=0; {Строковые константы вводятся и выводятся без апострофов}

FOR I:=1 TO LENGTH (S) DO

BEGIN

IF (S [ I ]='+') OR (S [ I ]='-') OR (S [ I ]='*') THEN M:=M+1 END;

WRITELN (M);

END.

б) Дано: строка символов, группы символов в данной строке разделены пробелами (одним или несколькими) – эти группы будем называть словами. Необходимо подсчитать количество слов.

PROGRAM PR1;

TYPE STROKA:= STRING;

VAR C: STROKA;

I, K: INTEGER;

BEGIN

READLN (C); K:=0;

FOR I:=1 TO LENGTH (C) DO

BEGIN

IF C [ I ] = ' ' THEN

IF C [ I-1 ] <> ' ' THEN K:=K+1;

END;

 

Вопросы для закрепления:

1) Определить значение символьной переменной d после выполнения следующих операторов:

а) c:= '+'; d:=c;

б) c:= '+'; d:='c';

2) Вычислить S-сумму порядковых номеров всех букв входящих в слово SUM.

3) Напечатать заданный непустой текст,удалив из него все цифры и удвоив знаки плюс и минус.

 

Множества

 

Наряду с численными типами множества являются фундаментальным понятием в математике (конечные, бесконечные, состоящие из разных (произвольных) элементов). В Pascal рассматриваются только конечные множества, состоящие из небольшого числа элементов имеющие один и тот же тип.

Множества в Pascal – это ограниченный, упорядоченный набор различных элементов одного базового типа.

Базовый тип – это совокупность значений из которых могут быть образованы множества. Всего может быть не более 256 различных элементов. (Идет то же самое расширение, что и по строке.)

Значение переменной множественного типа может содержать любое количество элементов базового типа (от 0 до всех возможных значений базового типа) и в качестве базового может использоваться любой тип, кроме вещественного.

Постоянные множества и в Pascal и в математике задаются путем их перечисления.

Математика Pascal
0 []
{1, 2, 3} [1, 2, 3]
{A, B, C, D} ['A', 'B', 'C', 'D']
{1, 2, …, N} [1..N]

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

Множества в Pascal описываются:

TYPE имя типа = SET OF базовый тип;

VAR имя переменной: имя типа;

или

VAR имя переменной: SET OF базовый тип;

или

CONST имя переменной = [элементы множества];

Пример:

VAR A: SET OF INTEGER;

B: SET OF 'A'..'Z';

C: SET OF CHAR;

В отличие от массивов к элементам множества нет прямого доступа, поэтому ввод и вывод элементов множества осуществляется:

1) Ввод с помощью операции сложения (объединения)

2) Вывод с помощью проверки принадлежности IF.






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных