Обращение | Тип аргумента | Тип результата | Функция |
Pi | — | R | Число л = 3.1415926536Е+00 |
abs (x) | I, R | I, R | Модуль аргумента х |
arctan (x) | I, R | R | Арктангенс х, рад |
cos (х) | I, R | R | Косинус x, рад |
ехр (х) | I, R | R | ех — экспонента х |
frac (x) | I, R | R | Дробная часть х |
int (x) | I, R | R | Целая часть х |
1п(х) | I, R | R | Натуральный логарифм х |
random | R | Псевдослучайное число в интервале [0, 1) | |
random (x) | I | I | Псевдослучайное число в интервале [0, х) |
round (x) | R | I | Округление х до ближайшего целого |
sin (x) | I, R | R | Синус х, рад |
sqr (x) | I, R | I, R | Квадрат х |
sqrt (x) | I, R | R | Корень квадратный из х |
trunc (х) | R | I | Ближайшее целое, не превышающее х по модулю |
Для верной записи арифметических выражений следует соблюдать определенные правила.
1. Все символы писать в строку, т.е. на одном уровне. Проставлять все знаки операций, не пропуская знак «*».
2. Не допускать записи двух знаков операций подряд, т. е. нельзя писать А + — В, следует писать А + (-В).
3. Операции с более высоким приоритетом выполняют раньше операций с меньшим приоритетом. Порядок убывания приоритетов операций следующий:
|
|
• вычисление функции;
• унарная операция смены знака (-);
• *, /, div, mod;
• +, -.
4. Несколько записанных подряд операций с одинаковым приоритетом выполняют последовательно слева направо.
5. Часть выражения, заключенная в скобки, вычисляется в первую очередь. (Например, в выражении (А + В) * (С - D) умножение производится после сложения и вычитания.)
6. Не следует записывать выражения, не имеющие математического смысла, например: деление на нуль, логарифм отрицательного числа и т.п.
Приведем пример. Арифметическое выражение, записанное по указанным правилам (цифрами в кружке указан порядок выполнения операций),
соответствует следующей математической формуле: |
В Паскале нет операции или стандартной функции возведения числа в произвольную степень. Для вычисления ху рекомендуется поступать следующим образом:
• если у — целое значение, следует использовать умножение, например: х3 → х * х * х. Для больших степеней следует использовать умножение в цикле;
• если у — вещественное значение, используется следующая математическая формула:
ху = еуlп(х), запись которой на Паскале имеет вид
Очевидно, что при вещественном типе у недопустимо нулевое или отрицательное значение х. Для у целого типа такого ограничения нет.
Например, формула будем иметь вид
Выражение имеет целый тип, если в результате его вычисления получается величина целого типа. Выражение имеет вещественный тип, если результатом его вычисления является вещественная величина.
Арифметический оператор присваивания имеет структуру, представленную на рис. 2.10.
|
|
Например, это может быть запись вида
Порядок выполнения оператора присваивания рассматривался ранее. Следует только обратить внимание на следующее правило: типы переменной и выражения должны быть одинаковыми. Исключением является случай, когда выражение имеет целый тип, а переменная — вещественный.
Упражнения
1. Записать арифметические выражения на Паскале для следующих формул:
3. Почему в Паскале аргумент функции всегда записывают в скобках, например пишут ln(5), а не ln 5?
4. Записать соответствующие арифметические выражения на Паскале для следующих формул:
8. Поменять местами значения целых переменных х и у, не используя дополнительные переменные. Определить недостаток найденного алгоритма по сравнению с методом обмена значений через третью переменную. Можно ли применять данный алгоритм для вещественных чисел?
9. Присвоить целой переменной h значение цифры, стоящей в разряде сотен в записи положительного целого числа к (например, если к = = 28 796, то h = 7).
10.Присвоить целой переменной S значение суммы цифр трехзначного целого числа к.
11.Определить, какую задачу решает следующая программа:
Указать, можно ли полученный результат получить более простым способом.