Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по Информатике.doc
Скачиваний:
3
Добавлен:
01.05.2025
Размер:
1 Мб
Скачать
☆

Var а,в : mn ; { Переменные типа: mn }

С : SET OF '0'..'9'; {диапазон символьных данных}

SIM : SET OF 'A'..'Z'; { " " }

SEZON : SET OF VRGODA;{перечисляемого типа }

SEZ : SET OF VESNA..OSEN;{диапазон перечисл. типа}

INTEG : SET OF 0..255;{диапазон целого типа}

где MN, VRGODA - имена типов: множества и перечисляемого типа; А, В, С, SIM, SEZON, SEZ, INTEG - имена переменных типа SET.

Множества-константы строятся в виде конструктора: списка значений элементов множества, заключенных в квадратные скобки. Значения элемен­тов списка разделяются запятыми. В списке значений может быть выраже­ние, результат которого равен элементу базового типа множества, и констан­ты диапазонного типа. Частным случаем выражения может быть имя пере­менной, константа базового типа или пустой список значений.

Обработка данных

Оператор присваивания.

Основное назначение программы состоит в выполнении тех действий по обработке данных, которые требуются для решения поставленной задачи. Как правило, решение любой задачи представляет собой процесс формирования результатов из заданных исходных данных. Правила формирования результа­тов задаются на языке Паскаль с помощью выражений. Оператор присваива­ния - один из основных операторов языка. Он определяет процесс вычисления нового значения с помощью выражения и запоминание полученного значения в ОП переменной.

Форма оператора присваивания:

А:= В;

где А - имя переменной, левая часть оператора присваивания;

В - выражение для вычисления нового значения, правая часть оператора присваивания; результат выражения должен быть совместим с типом переменной А.

В качестве переменной А может быть имя простой переменной любого ти­па, элемента массива, элемента записи или имя множества. При пересылке сложных типов данных это может быть имя массива или записи.

Классификация и правила вычисления выражений.

Выражение - это правило (формула) для вычисления нового значения. Выражения на языке Пас­каль могут быть 7 видов: арифметические, сравнения, логические, символьные, стро­ковые, над множествами и смешанные.

Выражение строится из операндов, операций и круглых скобок, с помощью которых можно задать требуемый по­рядок выполнения его операций. В качестве операндов могут быть константы, переменные и функции.

Результатом выполнения выражения является значе­ние арифметического или логического типа, строка или множество. Тип ре­зультата определяется как типом операндов, так и типом операций, выпол­ненных над операндами. Над разными типами данных допустимы различные совокупности типов операций.

Арифметические выражения - это аналог алгебраических выражений математики. Арифметические выражения используются:

  1. в операторах присваивания;

  2. в качестве фактических параметров процедур и функций;

  1. в операторах заголовков цикла;

  2. в списках данных операторов вывода.

К арифметическим данным применимы встроенные процедуры и функции.

Вызов

Возвращаемый результат

abs (у)

Модуль аргумента; тип результата совпадает с типом целым или вещественным аргумента и может быть

arctan (x)

Арктангенс (угол в радианах)

sin (x)

Синус (угол в радианах)

cos (x)

Косинус (угол в радианах)

exp (x)

Экспонента - ех

int (x)

Целая часть числа

ln(x)

Логарифм натуральный

sqr (y)

Квадрат аргумента; тип результата совпадает целым или вещественным с типом аргумента и может быть

sqrt (x)

Корень квадратный аргумента

Pi

Значение pi с точностью до 20 знака

round (x)

Округляет х до ближайшего целого значения,

имеющего длинный целый тип

trunc (x)

Формирует целую часть числа х в виде значения, имеющего длинный целый тип

frac (x)

Формирует дробную часть числа х в виде значения, имеющего вещественный тип

inc (z [,n])

z, увеличенное на 1 или на п, если п есть

dec (z [,n])

z, уменьшенное на 1 или на п, если п есть

Выражения сравнения

Выражение отношения (сравнения) - это 2 операнда, связанных операцией сравнения. Операндами отношений могут быть выражения, результат кото­рых - значения любого простого типа, строка или множество.

Типы обоих операндов должны быть совместимыми. Тип результата сравнения - логиче­ский, т. е. значение TRUE и FALSE.

Выражения сравнения можно использовать:

  1. в условных операторах;

  2. в операторах присваивания;

  3. в качестве фактических параметров процедур и функций;

  4. в списках данных операторов вывода.

Операция

Действие

Операнды

=

Равно

Любой простой тип, строка или множество

<>

Не равно

<

Меньше

<=

Меньше или равно

>

Больше

>=

Больше или равно

IN

Принадлежность к множеству

Левый операнд - выражение любого ординального типа, совместимого с типом базовых элементов правого операн­да; правый операнд - величина типа множества: константа или переменная с базовыми элементами того же типа, что и левый операнд

Логические выражения.

Логическое выражение - это средство алгебры логики. Логические выра­жения применяются для анализа, т. е. определения истинности или ложности определенных ситуаций. Используются логические выражения в языке Пас­каль там же, где и выражения сравнения. Логические выражения строятся из допустимых операндов и логических операций.

Логические операции в порядке приоритета от высшего к низшему:

NOT (HE) -отрицание;

AND (И) - логическое умножение;

OR (ИЛИ) - логическое сложение;

XOR (исключающее ИЛИ) - сложение по модулю 2.

Логические операции применимы к операндам логического и целого типа. Операндами логических операций могут быть: логиче­ские переменные, логические константы, функции, результат которых - логи­ческое значение, и результаты операций отношения. Тип результата логиче­ского выражения над логическими операндами логический, т. е. значение TRUE или FALSE.

Операнд-1

Операнд-2

Результат операций

NOT

AND

OR

XOR

F

F

Т

F

F

F

F

Т

Т

F

Т

Т

Т

F

F

F

Т

Т

Т

Т

F

Т

Т

F

где F = FALSE; T = TRUE.

Выражения над символами.

К типу CHAR применимы операции отношения, конкатенации и встроенные функции ORD, PRED и SUCC. Функ­ция CHR(I) формирует значение символа, код которого равен I, где I - вы­ражение над целыми, значение результата которого может быть от 0 до 255.

Например: CHR(65) = 'A'; CHR(55) = '7'; CHR(186) = '|'; CHR(26) = EOF; CHR(ORD(C)) = С ;

Конкатенация - это операция сцепления строк и символов, представляется она символом +. Результат конкатенации - строка, сформированная присоеди­нением к значению левого операнда значения правого операнда, длина кото­рой равна сумме длин сцепленных строк.

Например: 'А' + 'В' = 'АВ';

Строковые выражения

К строковым данным применимы операции отношения и конкатенации и ряд процедур и функций. Строковые выражения предназначены в основном для формирования текстов с помощью операции + - конкатенации.

Операнда­ми строкового выражения могут быть строки и символы (CHAR), представлен­ные переменными, константами или функциями.

Операции отношения выполняются над строковыми данными посимвольно. Если одна сравниваемая строка длиннее другой, то недостающие символы ко­роткой строки дополняются пробелами.

Например:

VAR R : BOOLEAN; SI, S2 : STRING[10];

... SI :='AB'; S2 := 'ABC'; R := S2 > SI;

... IF SI < S2 THEN ...

К строкам применим ряд встроенных процедур и функций.

Вызов

Tun результата

Назначение

LENGTH (ST)

Integer

Функция; возвращает длину строки ST

CONCAT (S1[,S2,...,SN])

String

Функция; возвращает строку, представляющую собой сцепление строк параметров: SI, S2, ..., SN

COPY (ST, N, K)

Функция; копирует из строки ST К символов начиная с символа с номером N

DELETE (ST, N, K)

Процедура; удаляет из строки ST К символов начиная с символа с номером N

INSERT (SUBST, ST, N)

Процедура; вставляет подстроку SUBST в строку ST начиная с символа с номером N

POS (SUBST, ST)

Integer

Функция; производит поиск подстроки SUBST в стро­ке ST и возвращает номер позиции, с которой она начинается в ST; если подстрока не найдена, возвра­щается 0

VAL (ST, X, CODE)

Integer или REAL

Процедура; преобразует строку символов ST во внут­реннее представление целого или вещественного чис­ла X; если преобразование успешно, CODE=0; или CODE равен номеру позиции в ST, где обнаружен ошибочный символ

STR (X [:W [:D]], ST)

String

Процедура; преобразует число X типа REAL или INTEGER в строку символов ST так, как это делает WRITELN

Выражения над множествами

Переменные множественного типа могут быть слева и справа от знака присваивания := , если они принадлежат идентичным типам: А:= В;

где А - переменная типа множества; В - выражение множественного типа.

Значения множественного типа в процессе обработки данных формируются с помощью выражений над множествами. Операндами выражений могут быть переменные и константы (конструкторы) множественного типа.

Объединением двух множеств (A + B) является множество, состоящее из элементов, входящих хотя бы в одно из множеств. Разностью двух множеств (А - B) является множество, состоящее из элементов множества А, не вхо­дящих в множество В. Пересечением двух множеств (A * B) является мно­жество, состоящее из элементов, одновременно входящих в множество А и в множество В.

Смешанные выражения

Смешанные выражения - это выражения, в которых используются различ­ные типы операций и операндов. Последовательность их выполнения опреде­ляется их приоритетом. Приоритет выполнения операций в последовательно­сти убывания приоритета дан в начале данного раздела.

Операции одного ранга выполняются в последовательности их написания слева направо. Операции разных рангов - в порядке их приоритета. Так как операции отношения самые низкоприоритетные, в случае, если результат операции отношения должен быть операндом логической операции, отноше­ние должно быть заключено в круглые скобки.

В смешанных выражениях тип результата последней операции определяет тип результата всего выражения.

Лекция №4.