Лекция № § Математические процедуры и функции icon

Лекция № § Математические процедуры и функции


Смотрите также:
Лекция: Использование функций...
Дискретные лпп-системы: импульсные характеристики, частотные характеристики...
Лекция №11. Организация библиотек. Стандартные библиотечные модули и модули пользователя...
Вызов одной подпрограммы из другой 3 Передача данных при вызове программы 4 Передача данных по...
Лекция Производная функции...
Программа дисциплины Раздел Основные черты международных судебных органов Лекция...
Контрольные вопросы...
Лекция Введение в бд и субд. Модели данных 2 Лекция Инфологическая модель «Сущность-связь»...
Лекция №17 Обобщенные функции Вразличных вопросах анализа термин «функция»...
Лекция 11. Индивидуальный и рыночный спрос 1 (как перейти от ненаблюдаемой функции полезности к...
Лекция Виртуальные функции. Дружественные функции...
Лекция 1 Лекция Бухгалтерский учет...



Загрузка...
скачать
Лекция № 9.


§ 9. Математические процедуры и функции.


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


Вызов функции Назначение функции

Y := Abs(X); Абсолютное значение Х

Y := Pi; Значение числа «Пи»


Y := Sin(X); Синус Х радиан

Y := Cos(X); Косинус Х радиан

Y := ArcTan(X); Арктангенс Х радиан

Y := Sqr(X); Квадрат Х

Y := Sqrt(X); Квадратный корень из Х, Х>0

Y := Round(X); Округление Х до ближайшего целого


^ Пример.

Спросить у пользователя значения вещественных чисел X и Y. Найти: и вывести полученное значение на экран.

PROGRAM Moduli;

VAR

X, Y, Z: real;

BEGIN

Write(’Введите X: ’); ReadLn(X);

Write(’Введите Y: ’); ReadLn(Y);

Z := (Abs(X) + Abs(Y)) / Abs(X + Y);

WriteLn(’Z равен: ’, Z);

END.

^ Пример.

Спросить у пользователя величину радиуса круга и найти площадь круга.

PROGRAM Krug;

VAR

r, S: real;

BEGIN

Write(’Введите радиус: ’); ReadLn(r);

S := Pi * Sqr(r);

WriteLn(’Площадь круга равна: ’, S);

END.

^ Пример.

Дано вещественное число A. Среди чисел: и так далее, найти первое, большее A.

PROGRAM Drobi;

VAR

i: integer;

A, Num, Slag: real;

BEGIN

Write(’Введите число: ’); ReadLn(A);

i := 1;

Num := 0;

while (Num <= A) do

begin

Slag := 1 / i;

Num := Num + Slag;

i := i + 1;

end;

WriteLn(’Искомое число: ’, Num);

END.

^ Пример.

Ввести некоторое число N. Используя конструкцию циклов, ввести последовательность из N произвольных чисел и напечатать сами числа и их квадраты.

^ PROGRAM S;

CONST

M = 100;

VAR

N, i: integer;

Mas: array [1..M] of integer;

BEGIN

Write(’Введите число элементов: ’); ReadLn(N);

i := 1;

while (i <= N) do

begin

Write(’Введи элемент: ’); ReadLn(Mas[i]);

i := i + 1;

end;

WriteLn(’Квадраты чисел:’);

i := 1;

while (i <= N) do

begin

WriteLn(Sqr(Mas[i]));

i := i + 1;

end;

END.


Стандартные функции языка Pascal


      При описании стандартных функций будет использоваться следующий синтаксис: <Имя_функции>(<аргумент:тип_аргумента>):<тип_возвращаемого_значения>

  • Abs (X :Real): Real - возвращает абсолютное значение аргумента (|X|);

  • Abs (X :Integer): Integer - возвращает абсолютное значение аргумента (|X|);

  • ArcTan (X:Real): Real - возвращает арктангенс аргумента (arctg X).

  • Chr (A :Byte): Char - возвращает символ, код которого равен A.

  • Cos (X :Real): Real - возвращает косинус аргумента (cos X);

  • Exp (X :Real): Real- возвращает экспоненту аргумента (ex);

  • Frac (X :Real): Real - возвращает дробную часть аргумента;

  • Int(X:Real):Real - возвращает целую часть аргумента;

  • Ln (X :Real): Real - возвращает натуральный логарифм аргумента (ln X);

  • Odd (A:Integer):Boolean - возвращает True, если А нечетно.

  • Ord (A :Char): Byte - возвращает порядковый номер символа A;

  • Round (X:Real): Integer - возвращает результат округления аргумента до ближайшего целого;

  • Random: Real - возвращает случайное число из интервала [0,1);

  • Random (A:Integer): Integer - возвращает случайное число из интервала [0,A);

  • Sqr (X:Real): Real - возвращает квадрат аргумента (X2);

  • Sqr (X:Integer): Integer - возвращает квадрат аргумента (X2);

  • Sqrt (X:Real): Real - возвращает квадратный корень аргумента;

  • Sin (X:Real): Real - возвращает синус аргумента;

  • Trunc (X:Real): Integer - отбрасывает дробную часть действительного аргумента;

  • UpCase (A:Char):Char - превращает строчные буквы латинского алфавита в соответствующие им прописные.


      Для вычисления значений других функций следует пользоваться тождествами:



Дополнительно


В Турбо-Паскале применяются следующие условные знаки и служебные слова для описания различных операций:

Приоритет операции

Условный знак

Выражение

Название операции

Тип переменных в выражении

Тип результата выполнения опрации

 

 

 

^ ЛОГИЧЕСКИЕ ОПЕРАЦИИ

1

not

not A

Логическое "не"

Логический целый

Логический целый

2

and

A and b

Логическое "и"

Логический целый

Логический целый

3

or

A or B

Логическое "или"

Логический целый

Логический целый

3

xor

A xor B

Логическое исключающее "или"

Логический целый

Логический целый

 

 

 

^ МАТЕМАТИЧЕСКИЕ ОПЕРАЦИИ

2

*

x*y

Умножение

Целый

Целый при умножении

2

/

x/y

Деление

Смешанный вещественный

Целых чисел, иначе вещественный

2

div

N div M

Деление

Цлый

Целый

2

mod

N mod M

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

Целый

Целый

3

+

x + y

Сложение

Целый вещественный

Целый при операции с целыми числами, иначе вещественный

 

 

 

^ ОПЕРАЦИИ СРАВНЕНИЯ

4

=

x=y

Равно

Число=число

Логический

4

<>

X<>y

Не равно

Строка=символ

Логический

4

>

x>y

Больше

Строка=символ

Логический

4

<

x

Меньше

Строка=символ

Логический

4

>=

x>=y

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

Строка=символ

Логический

4

<=

x<=y

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

Строка=символ

Логический


Отметим, что операции в скобках имеют высший приоритет, т. е. сначала выполняются операции в скобках, в том числе вычисление аргументов и значения функции. Операции одинакового приоритета выполняются слева направо, например a/c*b соответствует (a/c)*b.

Приоритет операции

Условный знак

Выражение

Название операции

Тип переменных в выражении

Тип результата выполнения операции

 

 

 

^ СПЕЦИФИЧЕСКИЕ ОПЕРАЦИИ

1

@

@x

Адрес переменной

Любой

Указатель

2

ch1

y ch1 n

Сдвиг влево

Целый

Целый

2

shr

y chr n

Сдвиг вправо

Целый

Целый

2

*

c * D

Пересечение

Множество

Множество

3

+

c + d

Обьединение

Множество

Множество

3

-

c - d

Вычитание

Множество

Множество

3

+

s + t

Сложение

Строка, символ

Строковый

4

in

e in d

Вхождение в множество

Элемент множество

Логический


Под смешанным типом переменных в выражении подразумевается операция с целым и вещественным типом переменных.


Стандартные математические функции и процедуры Турбо-Паскаля (в виде таблицы):

Наименование Функции

Тип аргумента

Тип значения

Результат вычесления

 

^ МАТЕМАТИЧЕСКИЕ ФУНКЦИИ

Abs(x)

Целый вещественный

Целый вещественный

Синус"x"рад

Sin(x)

Вещественный

Вещественный

Абсолютное значение "x"

Cos(x)

Вещественный

Вещественный

косинус"x"рад

Arctan(x)

Вещественный

Вещественный

арктангенс "х" ( -Pi/2 < y < td )< 2 Pi>

Sqrt(x)

вещественный

вещественный

квадратный корень из "х"(Ц х, где x > 0)

Sqr(x)

Целый вещественный

Целый вещественный

значение "х" в квадрате ( х2 )

Exp(x)

вещественный

вещественный

значение "е" в степени "х" ( ех, где e= 2. 718282. . . )

Ln(x)

вещественный

вещественный

натуральный логарифм "х" ( х > 0 )

Frac(x)

вещественный

вещественный

дробная часть "х"

Int(x)

Вещественный

Вещественный

целая часть "х"

Random

-

вещественный

случайное число ( 0 < =y< 1 )

Random(x)

Word

Word

случайное число ( 0 < =y< x )

Succ(c)

Порядковый

Порядковый

следующий за "с" символ

Pred(c)

Порядковый

Порядковый

предшествующий "с" символ




Наименование процедуры

Тип аргумента

Тип значения

Результат вычесления

 

^ МАТЕМАТИЧЕСКИЕ ПРОЦЕДУРЫ

Inc(x)

целый

целый

Увеличивает "х" на 1 ( x:=x+1; )

Dec(x)

целый

целый

Уменьшает "х" на 1 ( x:=x+1; )

Inc(x, n)

целый

целый

Увеличивает "х" на n ( x:=x+1; )

Dec(x, n)

целый

целый

Уменьшает "х" на n ( x:=x+1; )

 

^ ПРОЦЕДУРЫ ПРЕОБРАЗОВАНИЯ ТИПОВ ПЕРЕМЕННЫХ

Str(x, s)

x-целый или вещественный

s-строковый

Последовательность символов "s"из цифр числа "x"

Val(s, v, cod)

s-строковый

v-целый или вещественный cod- целый

Двоичная форма числа "v"последовательности "s" cod=0 (код ошибки)

 

^ ФУНКЦИИ ПРЕОБРАЗОВАНИЯ ТИПОВ ПЕРЕМЕННЫХ

Trunc(x)

вещественный

LongInt

целая часть "х"

Round(x)

вещественный

LongInt

округление "х" до целого

Odd(x)

целый

логический

возвращает True если "х" - нечетное число

Сhr(x)

Byte

Char

Символ ASCII кода "х"

Ord(c)

Char Порядковый

Byte LongInt

ASCII код символа "с" Порядковый номер символа "с"


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

При вызове функция возвращает значение, которое необходимо присвоить переменной. Например, запись Y:= Sin(x); позволяет вычислить значение синуса угла "х", которое при-сваивается переменной "Y". Функции имеют высший приоритет, т. е. в выражении сначала вычисляется значение функции, а затем выполняются другие операции. Например: в выра-жении Y:= 5 * Cos(Pi + x); сначала вычисляется значение аргумента, затем значение функ-ции, которое умножается на пять.

При вызове процедура производит определенные действия и может возвращать значения параметров. Процедура может не иметь параметров, например, для инициализации распре-деления случайных чисел вызывается процедура Randomize;. Процедуры могут включать па-раметры, которые необходимо задать при вызове процедуры и параметры, которые возвра-щают значения после выполнения процедуры. Например, при вызове процедуры Str(x, s); параметр "x" должен быть задан, а параметр "S" возвращает строковый вид числа "x". В не-которых процедурах параметры изменяют свое значение, Например, процедура Inc(x); уве-личивает значение "x" на единицу, т. е. возвращает новое значение "x", что соответствует оператору x:=x+1; Таким образом, при вызове процедуры необходимо знать назначение и тип задаваемых параметров.




Скачать 97,05 Kb.
оставить комментарий
Дата16.10.2011
Размер97,05 Kb.
ТипЛекция, Образовательные материалы
Добавить документ в свой блог или на сайт

Ваша оценка этого документа будет первой.
Ваша оценка:
Разместите кнопку на своём сайте или блоге:
rudocs.exdat.com

Загрузка...
База данных защищена авторским правом ©exdat 2000-2017
При копировании материала укажите ссылку
обратиться к администрации
Анализ
Справочники
Сценарии
Рефераты
Курсовые работы
Авторефераты
Программы
Методички
Документы
Понятия

опубликовать
Загрузка...
Документы

наверх