Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Введение в програмирование.Лекция 1.doc
Скачиваний:
13
Добавлен:
09.11.2019
Размер:
242.69 Кб
Скачать

1.9. Выражение. Оператор присваивания

Для начала нам потребуется оператор присваивания:

W := A;

где W – переменная, A – выражение.

Для создания выражений можно использовать константы, переменные, функции, операции и скобки ( и ). Выражение - конструкция, которая возвращает величину. Например,

X { переменная }

@X { адрес переменной }

15 { Целая константа }

Calc(X,Y) { вызов функции }

X * y { произведение X и y }

Z / (1 - Z) { частное Z и (1 - Z) }

X = 1.5 { логическая }

not Done { отрицание логической }

['a','b','c'] { множество }

Char(48) { символ с кодом 48 }

1.9.1. Арифметические функции

function Abs(X: Extended): Extended; // модуль

function ArcTan(X: Extended): Extended;

function Cos(X: Extended): Extended;

procedure Dec(var X[ ; N: Longint]) ; // Dec(x,N) eqv x:=x-N;

function Exp(X: Extended): Extended;

function FloatToStr(Value: Extended): string;

function FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): string;

procedure Inc(var X[ ; N: Longint]) ; // Inc(x,N) eqv x:=x+N;

function IntToStr(Value: Integer): string;

function Ln(X: Real): Real;

function Pi: Extended; // возвращает 3.1415926535897932385.

function Random [ ( Range: Integer) ] ; // случайное число

function Round(X: Extended): Int64; // целая часть

function Sin(X: Extended): Extended;

function Sqr(X: Extended): Extended; // квадрат

function Sqrt(X: Extended): Extended; // корень

procedure Str(X [: Width [: Decimals ]]; var S);

function StrToFloat(const S: string): Extended;

function StrToInt(const S: string): Integer;

function Trunc(X: Extended): Int64; // целая часть

Другие математические функции собраны в стандартном модуле Math.

1.9.2. Примечания

Tan(x) = Sin(x) / Cos(x)

ArcSin(x) = ArcTan (x/sqrt (1-sqr (x)))

ArcCos(x) = ArcTan (sqrt (1-sqr (x)) /x)

Loga(x) = Exp(x*Ln(a))

1.9.3. Примеры

var x : real;

S : string;

begin

x := Exp(1.0);

Writeln(x:3:2);

Str(ln(x):3:2, S);

Writeln('x = ' + FloatToStr(x) + '; ln(x) = ' + S);

Readln;

End.

1.10. Операции

@, not, ^, *, /, div, mod, and, shl, shr, as, +, –, or, xor, =, >, <, <>, <=, >=, in, is

Операторы @, not и ^ - унарные.

1.10.1. Арифметические операции

Оператор

Операция

Тип операндов

Тип результата

Пример

+

Сложение

integer, real

integer, real

X + Y

Вычитание

integer, real

integer, real

Result-1

*

Умножение

integer, real

integer, real

P* InterestRate

/

Деление

integer, real

real

X / 2

div

Целочисленное деление

integer

integer

13 div 4 = 3

mod

Остаток от делениия

integer

integer

13 mod 4 = 1

+ унарн

Знак

Integer, real

integer, real

+7

– унарн

Знак

Integer, real

integer, real

-X

shl

сдвиг налево

integer

integer

7 shl 2 = 00000111 shl 2 = 00011100 = 28

shr

сдвиг направо

integer

integer

12 shr 1 = 00001100 shr 1 = 00000110 = 6

not

Инверсия битов

Integer

integer

not 128 =

not 10000000 = 01111111 = 127

Таблица для бинарных операций

A

0101

B

0011

A and B

0001

A or B

0111

A xor B

0110

Примеры:

00000111

and

00000011

3=00000011

00000111

or

00000011

7=00000111

00000111

xor

00000011

4=00000100