
- •Лекция 1
- •Лексемы
- •Идентификатор
- •Ключевые (служебные) слова
- •Константы
- •Знаки операций
- •Логические операции
- •Разделители
- •Комментарий
- •Константы и переменные
- •Классификация типов данных
- •Целые типы данных
- •Вещественные типы
- •Лекция2. Символьный тип данных
- •Логический тип
- •Перечислимый тип данных
- •Порядковые и неизвестные типы
- •Порядковые типы данных
- •1 Целые типы
- •Лекция 3
- •2 Символьный тип char
- •3 Логический тип данных boolean
- •4 Перечислимый тип
- •Вещественные типы
- •Ограниченные (интервальные) типы
- •Структура программы
- •Заголовок программы
- •Раздел операторов
- •Заголовок программы
- •Раздел описания
- •Описание меток
- •Лекция 4 Описоние констант. Раздел констант.
- •Раздел описания типов
- •Раздел описания переменных
- •Раздел операторов
- •Пример программ на языке Турбо Паскаль
- •Программа решения примера имеет вид
- •Стиль программирования
- •Основные операторы языка Турбо Паскаль
- •Оператор присваивания
- •Выражения в языке Турбо Паскаль
- •Например, в выражении
- •В качестве операндов можно брать на первом шаге, например
- •Лекция 5
- •Стандартные функции языка Турбо Паскаль
- •Тригонометрические функции
- •Алгебраические функции
Лекция 5
-b и –sgrt(sgr(b)-4*a*c)
для получения значения числителя.
И на последнем шаге в качестве операндов можно взять отдельно числитель и знаменатель для получения понятного результата.
Примерно в таком порядке и будет происходить вычисление данного выражения.
Но если нас интересует не значение этого выражения, а его правильность с точки зрения синтаксиса языка программирования, то
на первом шаге в качестве операндов нужно выбрать числитель и знаменатель;
на втором шаге - разбить числитель на два слагаемых операнда
–b и +sgrt(sgr(b)-4*a*c;
на третьем шаге – разбить на два операнда аргумент стандартной функции sgr;
на четвертом, в качестве операнда рассматривать аргумент стандартной функции sgr;
на пятом шаге операндами будут 4, a и с;
на шестом шаге операндами будут 2 и а;
и т.д.
Из-за такой неодназначности анализа и работы с выражениями, если воспринимать операнд только как часть выражения, возникает невозможность (неопределенность) интерпритации выражения для проверки его правильности и вычисления значения.
Поэтому при практическом программировании отказались от понятия операнда в широком смысле слова и пользуются понятием операнда в узком смысле слова.
Операнд – это то над чем производятся вычисления (опреции). Операндами могут быть:
переменные ;
константы;
стандартная функция Pi (П).
А для других стандартных (и не стандаттных ) функций, записей в скобках – ввести понятие значения функции и выражения в скобках.
Таким образом, в языке Турбо Паскаль выражение состоит из операндов (констант, переменных, стандартной функции Pi), знаков операций, стандартных функций языка Турбо Паскаль и круглых скобок.
Например, в выражении
(-b+sgrt(sgr(b)-4*a*c))/(2*a)
операндами являются переменные a,b,c b и константы 4 и 2.
Знаки операций - + - * * / *
Стандартные функции sgrt – вычисление квадратного корня и sgr – возведение в квадрат.
Кроме того, это выражение содержит 4 открывающихся и закрывающихся круглых скобок.
Рассмотрим отдельно элементи выражений. Операнды (перемнные и константы) были рассмотрены ранее, поэтому начнем с функций.
Стандартные функции языка Турбо Паскаль
Сначала рассмотрим стандартные функции языка Турбо Паскаль, используемые для математических вычислений, результат и аргумент которых имеет тип Real.
Тригонометрические функции
sin (x) вычисление sin x
cos (x) вычисление cos x
ф
sinx cosx
tgx
=
в
sinx cosx
ctgx
=
в Турбо Паскале - cos(x)/sin(x)
arctan(x) вычисление arctgx
Значения функций arcsinx, arccosx, arctgx вычисляются по соответствующим формулам.
Алгебраические функции
ln(x) вычисление натурального логарифма х (lnx)
exp(x) вычисление ex (экспонента х)
abs(x)нахождение
абсолютной величины х (abs(-5)=5 abs(6)=6)
sgrt(x)вычисление
квадратного корня из х ( х)
sgr(x) вычисление х2 (возведение в квадрат)
Функции или операции возведения в произвольную степень ха в языке Турбо Паскаль, нет. Поэтому поступают так. Вычисляют ха через экспоненту и логарифмм следующим образом
ха=ealnx
в языке Турбо Паскаль соответственно
exp
(a*ln(x))
Акорень к- той степени их хкх в
языке Турбо Паскаль вычисляются по
следующей формуле
кх=х1/к=хlnx/k
в языке Турбо Паскаль соответственно
exp(ln(x/k)
frac(x) – нахождение дробной части х
frac(4.7)=0.7
frac(-5.1)=-0.1
int (x) – отбрасывание дробной части х
int(66768.456)=66768
и аргумент и результат этой функции имеет тип Real, она используется тогда, когда в выражении необходим тип Real или требуется найти целую часть у очень большого числа (2147483647 (максимум для longint).