Основные понятия языка Object Pascal

Содержание

Слайд 2

4.1. Синтаксические диаграммы

Синтаксическая диаграмма представляет собой графическое представление понятия языка с

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

- обозначение базового понятия

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

- обозначение соединения элементов диаграммы

Слайд 3

Пример синтаксической диаграммы

Условный оператор

Сокращенная форма условного оператора:
if <условие> then <оператор>;

Полная форма

Пример синтаксической диаграммы Условный оператор Сокращенная форма условного оператора: if then ;
условного оператора:
if <условие> then <оператор1> else <оператор2>;

Слайд 4

4.2. Cостав языка

Алфавит (набор символов, используемых в языке)
Синтаксис (правила построения слов языка)
Семантика

4.2. Cостав языка Алфавит (набор символов, используемых в языке) Синтаксис (правила построения
(смысловое значение слов, выражений)

Алфавит - набор неделимых символов
Лексема - элементарные единицы языка, имеющие самостоятельный смысл
Выражение – задает правило вычисления некоторого значения
Оператор – задает описание некоторого действия
Директива компилятору – задает процесс компиляции и построения программы

Любой язык определяется:

Алгоритмический язык определяется:

Слайд 5

Алфавит языка

Латинские буквы
A…Z, a…z
Арабские цифры
0 1 2 3 4 5 6 7

Алфавит языка Латинские буквы A…Z, a…z Арабские цифры 0 1 2 3
8 9
Спецсимволы
+ – * / = > < . , ; : ‘ @ ( ) [ ] { } $ _ # ^
символ пробела (в примерах обозначаем как ¬)
Кириллица (только для комментариев и строк)
А…Я, а…я

Слайд 6

Лексемы

Служебные слова — это группа слов, смысл которых зафиксирован в языке:

Absolute and array asm assembler
Begin case Const constructor destructor
Div do downto else End
External file for forward function
Goto if implementation in inline
Interface Interrupt label mod

Лексемы Служебные слова — это группа слов, смысл которых зафиксирован в языке:

Nil not object of or packed
private procedure program recored
Repeat set shl shr string
Then to type unit until
Uses var virtual while with xor

Знаки операций – для задания действий по преобразованию данных и вычислению значений:

+ - * / = < <= <> >= >
если используется двойной знак, то он набирается без пробела!

Разделители: «;» «:» «(» «)» «[», «]», «,» «.» « » (пробел)

Пример: Var a:integer; b : real;c: char;

знаки операций

разделители

служебные слова

идентификаторы

Слайд 7

Идентификаторы — это имена переменных, констант, процедур, функций, типов, меток, т.е. имя определенного

Идентификаторы — это имена переменных, констант, процедур, функций, типов, меток, т.е. имя
программного объекта.

Идентификатор

Примеры: Summa help1 count_clock q12345 _assa S1 door Mywindow

Служебные слова НЕЛЬЗЯ использовать в качестве имен переменных, определяемых пользователем.

Примеры: Begin MyBegin
Const const1

Var I, i : integer;
Error: Identifier redeclared:

Слайд 8

4.3. Тип данных

Маня

Х

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

4.3. Тип данных Маня Х Тип определяет множество значений, допустимых для величин
множество операций над ними

Слайд 9

4.3.1. Система типов языка Object Pascal

простые типы

составные типы

ссылочные типы

процедурные
типы

скалярные

стандартные
скалярные

ограниченные (интервальные)

перечислимые

регулярные

комбинированные

файловые

множественные

строковые

объекты

4.3.1. Система типов языка Object Pascal простые типы составные типы ссылочные типы

Слайд 10

стандартные скалярные типы данных

целый тип
Integer

вещественный тип
Real

символьный тип
Char

логический тип
Boolean

дискретные

стандартные скалярные типы данных целый тип Integer вещественный тип Real символьный тип
типы

Слайд 11

Таблица простых типов

Таблица простых типов

Слайд 12

4.3.2. Описание данных

определение переменных

var

;

Описание переменных

Определение переменных

Пример:
Var i:integer;{описывается целая переменная i}
S:Real; {описание

4.3.2. Описание данных определение переменных var ; Описание переменных Определение переменных Пример:
дробной переменной S}

переменные и константы

Слайд 13

Описание констант

Определение константы

Пример:
Const b=5; {это целая константа}
g=9.34; {это дробная константа}
с=’c’;

Описание констант Определение константы Пример: Const b=5; {это целая константа} g=9.34; {это
{это символьная константа}
MyConst=b+20; {это пример константного выражения}

B:=25; g:=g+100;

Значение констант в программе нельзя менять

Слайд 14

4.3.3. Стандартный логический тип Boolean

Описание констант:
Const MyBool = True;
MyFalse = False;

и

4.3.3. Стандартный логический тип Boolean Описание констант: Const MyBool = True; MyFalse
логические операции:

Над логическими данными возможны только

операции сравнения

Описание переменных:
Var a,b: boolean;
bool: boolean;

Результат операций – логический:

A < b

True или False

A or bool

True или False

Слайд 15

Дополнительные булевские типы

Дополнительные булевские типы

Слайд 16

Целое число

4.3.4. Стандартный целый тип Integer

Описание констант:
Const myConst = 5;
Const1 =

Целое число 4.3.4. Стандартный целый тип Integer Описание констант: Const myConst =
-27; Const2 = $F1;

Арифметические операции над целым типом:

сложение +, вычитание –, умножение *
деление нацело (с отбрасыванием дробной части) div
остаток от целочисленного деления mod

Операции отношения над целым типом (результат - логический):

Описание переменных:
Var a,b: integer;

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

Слайд 17

Дополнительные целочисленные типы

Дополнительные целочисленные типы

Слайд 18

4.3.5. Стандартный вещественный тип Real

Вещественное число

Порядок

Последовательность цифр – одна или несколько арабских

4.3.5. Стандартный вещественный тип Real Вещественное число Порядок Последовательность цифр – одна
цифр, записанных подряд без пробела

Слайд 19

Арифметические операции над вещественным типом:

Операции отношения над вещественным типом:

+ - * /

=

Арифметические операции над вещественным типом: Операции отношения над вещественным типом: + -
<> < > <= >=

вещественные константы:

Описание переменных:
Var a,b: real;

Результат операций - вещественный

Результат операций - логический

Пример:
A+b результат число типа Real

Пример:
a< b результат True или False

Слайд 20

Дополнительные вещественные типы

Пример:
Var r: real;
cc:Currency;
. . .
r имеет значение 5
сc имеет

Дополнительные вещественные типы Пример: Var r: real; cc:Currency; . . . r
значение 5

Слайд 21

4.3.6. Стандартный символьный тип Char

Коды 0...127
(кодировка ASCII)

символьные константы

#100
#68
#203
#198

Символьные данные можно только

4.3.6. Стандартный символьный тип Char Коды 0...127 (кодировка ASCII) символьные константы #100
сравнивать
Пример:
‘a’ > ‘A’→ False
‘y’ < ‘Y’→ True

‘d’
‘D’
‘ж’
‘Ж’

Коды 128...255
(модифицированный альтернативный вариант)

символьные переменные:
Var a,b: char;
ch: char;

Слайд 22

Дополнительные символьные типы

Дополнительные символьные типы

Слайд 23

4.4. Арифметические и логические выражения

Выражение

Простое выражение

Операции отношения:

Операции типа сложения:

= <> < >

4.4. Арифметические и логические выражения Выражение Простое выражение Операции отношения: Операции типа
<= >=

+ - or

Слайд 24

множитель

Операции типа умножения:

* / div mod and

множитель Операции типа умножения: * / div mod and

Слайд 25

a+(w+(m+n*(y+x)/(4*c)))

Примеры записи арифметических выражений

((a1*x1)-(а2*х2))/(х1-х2)

a+b/(-c)

Приоритет (ранги) операций:

a+(w+(m+n*(y+x)/(4*c))) Примеры записи арифметических выражений ((a1*x1)-(а2*х2))/(х1-х2) a+b/(-c) Приоритет (ранги) операций:

Слайд 26

Примеры вычисления выражений

Var a,b: real; i,j: integer;
. . .

Примеры вычисления выражений Var a,b: real; i,j: integer; . . .

Слайд 27

4.5. Стандартные функции

4.5. Стандартные функции

Слайд 28

Определена как константа величина π - Pi

Примеры задания стандартных функций

Определена как константа величина π - Pi Примеры задания стандартных функций

Слайд 29

Примеры использования стандартных функций

Ln(b)/ln(10)

Exp(1/3*Ln(7))

var a,b,x,y:Real;
k:integer;
. . .
y:=sqrt(abs((cos(k*x)-b)/(a*a+b*b)))-
exp(abs(a-b))+sin(k*k*x)/cos(k*k*x)/(a-sin(k*x));

Задание: запрограммировать формулу:

целое

дробное

дробное

дробное

Примеры использования стандартных функций Ln(b)/ln(10) Exp(1/3*Ln(7)) var a,b,x,y:Real; k:integer; . . .
Имя файла: Основные-понятия-языка-Object-Pascal.pptx
Количество просмотров: 205
Количество скачиваний: 0