АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Арифметический оператор присваивания

Читайте также:
  1. Аппаратчик-оператор экологических установок
  2. Договорные отношения в туризме. Работа туроператоров с поставщиками туристических услуг и партнёрами
  3. Классификация математических моделей в зависимости от оператора модели
  4. Логические операторы
  5. Оператор Like и символы подстановки в запросах
  6. Оператор Без НДС С НДС
  7. Оператор выбора switch
  8. Оператор цикла do while
  9. Оператор цикла do while
  10. Оператор цикла for
  11. Оператор цикла while

Арифметические операции, функции, выражения.

К арифметическим типам данных относятся группы вещественных и целых типов. К ним применимы арифметические операции и операции отношений.

Операции над данными бывают унарными (применимые к одному операнду) и бинарными (применимые к двум операндам). Унарная арифметическая операция одна. Это операция изменения знака.

Бинарные арифметические операции стандартного Паскаля описаны в табл. 3.3. В ней I обозначает целые типы, R — вещественные типы.

Знак Выражение Операция
+ А + В Сложение
- А - В Вычитание
* А * В Умножение
/ А / В Вещественное деление
div A div В Целое деление
mod A mod В Остаток от целого деления

К арифметическим величинам могут быть применены стандартные функции Паскаля.

Функция выступает как операнд в выражении. Например, в следующем операторе присваивания X:=2*Sin(A)/Ln(3.5)+Cos(C-D)

операндами являются три функции: sin, Ln, cos. Их запись такая же, как в математике. Аргументы называются фактическими параметрами и являются в общем случае выражениями арифметического типа. Аргументы записываются в круглых скобках. Результат вычисления функции — величина соответствующего типа.

Табл. 3.4 содержит описания математических стандартных функций Турбо Паскаля.

Обращение Функция
Pi Числол = 3.1415926536Е + 00
Abs(x) Модуль аргумента х
Arctan(x) Арктангенс х (радианы)
Cos (x) Косинус х (х в радианах)
Ехр(х) еx — экспонента
Frac(x) Дробная часть х
Int(х) Целая часть х
Ln(x) Натуральный логарифм х
Random Псевдослучайное число в интервале [0, 1)
Random(x) Псевдослучайное число в интервале [0, х)
Round (x) Округление до ближайшего целого
Sin(x) Синус х (х в радианах)
Sqr(x) Квадрат х
Sqrt(x) Корень квадратный из х
Trunc (x) Ближайшее целое, не превышающее х по модулю

Арифметическое выражение задает порядок выполнения действий над числовыми величинами. Арифметические выражения содержат арифметические операции, функции, операнды, круглые скобки. Одна константа или одна переменная — простейшая форма арифметического выражения.

Например, запишем по правилам Паскаля следующее математическое выражение:

На Паскале это выглядит так:

(2*a+Sqrt(0.5*Sin(x + у)))/(0.2*С-Ln(x - у))

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

• Все символы пишутся в строчку на одном уровне. Проставляются все знаки операций (нельзя пропускать знак умножения).

• Не допускаются два следующих подряд знака операций (нельзя А+-В; можно А+ (—В)).

• Операции с более высоким приоритетом выполняются раньше операций с меньшим приоритетом. Порядок убывания приоритетов:

• вычисление функции;

• унарная операция смены знака (-);

• *, /, div, mod;

• +, -.

• Несколько записанных подряд операций одинакового приоритета выполняются последовательно слева направо.

• Часть выражения, заключенная в скобки, вычисляется в первую очередь. (Например, (А+в) * (С-D) - умножение производится после сложения и вычитания.)

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

Пример. Цифрами сверху указан порядок выполнения операций:

1 7 4 5 3 6 2 12 11 10 8 9

(l+y)*(2*x + sqrt(y)-(x + y)) / (у+1/ (sqr (x)-4))

Данное арифметическое выражение соответствует следующей математической формуле:

 

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

• если у — целое значение, то степень вычисляется через умножение; например, х3х * х *х; большие степени следует вычислять умножением в цикле;

• если у — вещественное значение, то используется следующая математическая формула: ху = еуLn(х).

На Паскале это будет выглядеть так: Exp(y*Ln(x))

Очевидно, что при вещественном у не допускается нулевое или отрицательное значение х. Для целого у такого ограничения нет. Например,

На Паскале это будет так:

Exp(l/3*Ln(a+l))

Выражение имеет целый тип, если в результате его вычисления получается величина целого типа. Выражение имеет вещественный тип, если результатом его вычисления является вещественная величина.

Арифметический оператор присваивания имеет структуру:

Y:=(F*N-4.5)/Cos(X)

Порядок выполнения оператора присваивания нами уже рассматривался. Следует обратить особое внимание на следующее правило: типы переменной и выражения должны быть одинаковыми. Исключение составляет случай, когда выражение имеет целый тип, а переменная — вещественный.

Домашнее задание:

Упражнения

I. Для следующих формул записать соответствующие арифметические выражения на Паскале:

а) а + bх + cyz; б) [(ах - b)x + c]x-d;

2. Записать математические формулы, соответствующие следующим выражениям на Паскале:

а) (p+q)/(r+s)-p*q/(r*s);

б) lE3+beta/(x-gamma*delta);

в) a/b*(c+d)-(a-b)/b/c+lE-8.

3. Для следующих формул записать соответствующие арифметические выражения на Паскале:

5. Вычислить значения выражений:

а) trunc(6.9); д) round(6.9);

б) trunc(6.2); e) round(6.2);

в) 20 div 6; ж) 20 mod 6;

г) 2 div 5; з) 2 mod 5;

и) 3*7 div 2 mod 7/3-trunc(sin(1)).

6. Определить тип выражения:

а) 1+0.0; б) 20/4; в) sqr(4);

г) sqrt(16); д) sin(0); e) trunc (-3.14).

 


Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.)