Добавил:
kostikboritski@gmail.com Выполнение курсовых, РГР технических предметов Механического факультета. Так же чертежи по инженерной графике для МФ, УПП. Писать на почту. Дипломы по кафедре Вагоны Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
8
Добавлен:
12.08.2017
Размер:
169.47 Кб
Скачать

Таблица 1 − Стандартные математические функции

Запись функции на Pascal

Математическая запись

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

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

Действие

aвs(x)

integer, real

integer, real

модуль (абсолютное значение) числа х

sqr(x)

integer, real

integer, real

квадрат числа х

sqrt(x)

integer, real

real

квадратный корень из числа х

sin(x)

integer, real

real

синус числа х

cos(x)

integer, real

real

косинус числа х

аrctаn(x)

integer, real

real

арктангенс числа х

ln(x)

integer, real

real

натуральный логарифм числа х

ехр(x)

integer, real

real

экспонента числа х, т. е. 2,718х

trunc(x)

real

integer

отбрасывает дробную часть х

round(x)

real

integer

округляет число х

int(x)

real

real

целая чась числа х

frac(x)

real

real

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

 

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

Математическая функция

Математическая формула

Запись на языке Pascal

sin(x)/cos(x)

cos(x)/sin(x)

arctan(x/sqrt(1-sqr(x)))

arctan(sqrt(1-sqr(x))/x)

arctan(1/x)

exp(x*ln(a))

ln(x)/ln(10)

ln(x)/ln(a)

(exp(x)-exp(-x))/2

(exp(x)+exp(-x))/2

Запись алгебраических выражений

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

1 Необходимо учитывать приоритет операций: сначала выполняется умножение (знак «*») и деление (знак «/»), затем сложение и вычитание.

Все знаки арифметических операций, даже те, которые при корректной математической записи ставить не принято (например, как при записи произведения ab = ab), необходимо указывать при составлении выражения на Pascal. Изменить порядок выполнения операций можно с помощью скобок:

 

Математическое выражение

Запись на языке Pascal

Возможные ошибки

(a-b)/(c+d)

Отсутствие скобок изменит смысл выражения:

a-b/c+d ~

(sin(x)+y)/(x*y)

1 Пропущенный знак умножения означает указание на новую (возможно, несуществующую) переменную xy: (sin(x)+y)/xy

2 Неправильно расставленные или пропущенные скобки изменят смысл выражения:

(sinx+y)/(x*y) ~ введено новое имя sinx;

(sin(x)+y)/x*y ~  − изменен смысл

 

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

Математическое выражение

Запись на языке Pascal

Возможные ошибки

sqrt(abs(sin(x)));

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

sqr(ln(2*x));

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

exp(2*sqr(cos(x)));

Неправильный порядок следования функций, потеря знака умножения или скобок

 

3 При записи на языке Pascal сложных алгебраических выражений целесообразно вводить вспомогательные переменные, которыми, однако, не следует злоупотреблять. Например, для записи выражения  можно ввести промежуточную переменную f1 и только после этого записать f:

f1:=sin(x)/cos(x);

f:=(1+sqr(f1))/(1-2*sqr(f1));

4 Для записи на языке Pascal экспоненты , где e  2,718281828 − основание натурального логарифма, используется функция exp(x), например: 

Математическое выражение

Запись на языке Pascal

exp(a+b)

exp(1)

 

5 Определенные трудности возникают при записи степенных и показательных выражений, например, ,  или . Следует помнить формулы элементарной математики:

        

которые используются при записи выражений на Pascal:

 

Математическое выражение

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

Запись на языке Pascal

exp(x/2*ln(a+b))

exp(1/3*ln(a/b))

 

6 Следует учитывать область определения функций, входящих в выражение. Такие ошибки легче предотвратить, чем исправлять, так как они не обнаруживаются компилятором. Например, выражение  при записи на языке Pascal в виде exp(17*ln(x)) вызовет появление ошибки при отрицательных значениях переменной х.

Поэтому его лучше записать так: sqr(sqr(sqr(sqr(x))))*x;.

Другой пример:

Математическое выражение

Запись на языке Pascal

Альтернативная запись на языке Pascal

exp(1/8*ln(x));

sqrt(sqrt(sqrt(x)))

 

Общие стандартные процедуры и функции

Имя и параметры

Действие

Типы параметров

Тип возвращаемого значения

Abs(x)

 абсолютное значение (модуль) x

x - integer, real, complex

совпадает с типом параметра

Sqr(x)

 квадрат x

x - integer, real, complex

совпадает с типом параметра

Sqrt(x)

 квадратный корень из x

x - real, complex

совпадает с типом параметра

Sin(x)

 синус x

x - real, complex

совпадает с типом параметра

Cos(x)

 косинус x

x - real, complex

совпадает с типом параметра

Ln(x)

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

x - real, complex

совпадает с типом параметра

Exp(x)

 e в степени x (e=2.718281...)

x - real, complex

совпадает с типом параметра

Arctan(x)

 арктангенс x

x - real, complex

совпадает с типом параметра

Power(x,y)

 x в степени y

x, y - real

real

Conj(z)

число, комплексно сопряженное к z

z - complex

complex

Carg(z)

аргумент комплексного числа z (в диапазоне (-Pi, Pi])

z - complex

real

Round(x)

результат округления x до ближайшего целого

x - real

integer

Trunc(x)

целая часть х

x - real

integer

Int(x)

целая часть х

x - real

real

Frac(x)

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

x - real

real

Ord(x)

номер значения порядкового типа

x - порядкового типа

integer

Chr(x)

символ с кодом х

x - integer

char

Odd(x)

True, если х - нечетное, и False в противном случае

x - integer

boolean

Inc(x)

Увеличивает x на 1

x - порядкового типа

 

Dec(x)

Уменьшает x на 1

x - порядкового типа

 

Inc(x,n)

Увеличивает x на n

x - порядкового типа, n - целого типа

 

Dec(x,n)

Уменьшает x на n

x - порядкового типа, n - целого типа

 

Pred(x)

предыдущее значение порядкового типа

x - порядкового типа

совпадает с типом параметра

Succ(x)

следующее значение порядкового типа

x - порядкового типа

совпадает с типом параметра

Random(x)

случайное целое в диапазоне от 0 до x-1

x - integer

integer

Random

случайное вещественное в диапазоне [0..1)

 

real

Include(s,x)

включает элемент x во множество s

s - множество,

x - элемент

 

Exclude(s,x)

исключает элемент x из множества s

s - множество,

x - элемент

 

 

Контрольные вопросы

Как переключаться между окнами?

Как упорядочить несколько открытых окон на экране?

Как в оболочке Total Commander создать текстовый документ?

Как просмотреть содержимое текстового файла в Total Commander?  

Как открыть файл для редактирования в Total Commander?

Как запустить справку в Total Commander?

Какова комбинацию клавиш для сохранения файла?

Как запустить программу в Паскале на выполнение?

© Миняйлова Е.Л., Вербовиков Д.А., Коледа Н.Р.