Выражения и стандартные функции языка TP

Действия, которые должен выполнить ПК, указываются в выражениях. Выражение задает порядок выполнения действий над данными и состоит из операндов, круглых скобок и знаков операций. Операнды – это константы, переменные и функции языка TP. Круглые скобки используются для изменения последовательности выполнения операций в выражении. Операции – это действия, выполняемые над операндами. В арифметических выражениях используются арифметические операции, представленные в таблице 2.

 

Таблица 2 – Используемые в TP арифметические операции

Операция Действие Тип операндов Тип результата
+ Сложение Целый действительный Целый действительный
- Вычитание -“- -“-
* Умножение -“- -“-
/ Деление -“- -“-
Div Целочисленное деление Целый Целый
Mod Остаток от деления -“- -“-

Результат вычисления выражения заносится в переменную с помощью оператора присваивания: Z:=(SUMMA + 5) * ADR – REZINTER / (ZNAM - 2.6);.

Рекомендуется следить за тем, чтобы тип переменной совпадал с типом выражения. При несовпадении типов ПК попытается преобразовать тип результата вычисления арифметического выражения к типу переменной. Если переменная действительного типа (REAL), а выражение целого типа (INTEGER), то оператор присваивания выполнится успешно. Если переменная целого типа (INTEGER), а выражение действительного типа (REAL), ПК выведет сообщение об ошибке преобразования типа.

Пример 1. Записать оператордля вычисления выражения:

Y = a4+ b3.

В языке TP отсутствует операция возведения в степень, поэтому вместо нее чаще всего используют многократное умножение операндов на свое собственное значение:

y:=a * a * а * а + b * b * b.

В выражениях могут использоваться функции TP. Некоторые наиболее часто используемые функции языка TP приведены в таблице 3.

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

- для вычисления логарифма с произвольным основанием a используется соотношение

;

- для возведения положительного числа x в действительную степень a используется соотношение

.

 


Таблица 3 – Основные функции алгоритмического языка ТР

Математическая запись Действие Запись на ТР Пример
|х| Вычисление абсолютного значения х ABS(X) ABS(-4)=4
х2 Вычисление квадрата х SQR(X) SQR(5)=25
Вычисление квадратного корня из х SQRT(X) SQRT(25)=5
ех Вычисление экспоненты х EXP(X) EXP(1)=2.7183…
lnx Вычисление натурального логарифма LN(X) LN(EXP(1))=1
sinx Вычисление синуса х SIN(X) SIN(PI/6)=0.5
cosx Вычисление косинуса х COS(X) COS(PI/3)=0.5
arctgx Вычисление арктангенса х ARCTAN(X) ARCTAN(1)= PI/4=0.7854
  Округление х до целого ROUND(X) ROUND(2.5)=3
  Вычисление целой части х, результат – действительный INT(X) INT(2.5)=2.0
  Вычисление целой части х, результат – целый TRUNC(X) TRUNC(2.5)=2
  Вычисление дробной части х FRAC(X) FRAC(2.5)=0.5
  True, если х – нечетный; False, если х – четный ODD(X) ODD(3)=TRUE

 

 

Пример 2. Вычислить значение выражения:

,

при a = 0,.56, b = 2,734, x = 1,8·10–3, результат y = 0,35 × 102.

Так как функция arcsin в языке TP отсутствует, для ее вычисления используем известное соотношение:

.

Для уменьшения вероятности ошибок и упрощения отладки программы запишем заданное выражение в виде нескольких операторов присваивания:

A := 0.56; B := -2.734; X := 1.8e-3; Y := 0.35e2;

FI := (EXP(B*LN(Y)) + ABS(B) – EXP(LN(A)/3));

FI := FI*(EXP(A) - SQRT(A) + COS(Y));

FI := FI/(LN(A)/LN(10) - X*X* LN(Y) + ARCTAN(A/SQRT(1-A*A)));

В этих операторах переменные А, В, Х, Yявляются исходными данными, а переменная FI– результатом вычислений. Наиболее часто численные значения исходных данных вводятся с клавиатуры, а результаты вычислений выводятся на экран дисплея. Такие действия выполняют операторы ввода и вывода.