русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Полнота вычислений


Дата добавления: 2013-12-24; просмотров: 771; Нарушение авторских прав


Арифметические выражения

Стандартные арифметические функции

Другие операции

 

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

#, in, +, *, [] : см. лекцию 5

@, ^ : см. лекцию 10

 

К арифметическим операциям примыкают и стандартные арифметические функции. Их список с кратким описанием мы приводим в таблице.

Описание Тип аргумента Тип результата1)

abs(x) Абсолютное значение (модуль) числа Арифметический Совпадает с типом аргумента

arctan(x) Арктангенс (в радианах) Арифметический Вещественный

cos(x) Косинус (в радианах) Арифметический Вещественный

exp(x) Экспонента (ex) Арифметический Вещественный

frac(x) Взятие дробной части числа Арифметический Вещественный

int(x) Взятие целой части числа Арифметический Вещественный

ln(x) Натуральный логарифм (по основанию e) Арифметический Вещественный

odd(x) Проверка нечетности числа Целый boolean

pi Значение числа - Вещественный

round(x) Округление к ближайшему целому Арифметический Целый

trunc(x) Округление "вниз" - к ближайшему меньшему целому Арифметический Целый

sin(x) Синус (в радианах) Арифметический Вещественный

sqr(x) Возведение в квадрат Арифметический Вещественный

sqrt(x) Извлечение квадратного корня Арифметический Вещественный

 

 

Все арифметические операции можно сочетать друг с другом - конечно, с учетом допустимых для их операндов типов данных.

 

В роли операндов любой операции могут выступать переменные, константы, вызовы функций или выражения, построенные на основе других операций. Все вместе и называется выражением. Определение выражения через выражение не должно вас смущать, ведь рекурсивное задание конструкций вообще свойственно программированию (см. лекцию 9).



 

Примеры арифметических выражений:

 

(x<0) and (y>0) - выражение, результат которого принадлежит к типу boolean;

 

z shl abs(k) - вторым операндом является вызов стандартной функции;

 

(x mod k) + min(a,b) + trunc(z) - сочетание арифметических операций и вызовов функций;

 

odd(round(x/abs(x))) - "многоэтажное" выражение.

 

В общем случае вычисление сложного логического выражения прекращается в тот момент, когда его окончательное значение становится понятным (например, true or (b<0)). Зачастую такой подход позволяет заметно сэкономить на выполнении "лишних" действий. Скажем, если есть некоторая сложно вычислимая функция my_func, вызов которой входит в состав выражения

if (x<=0) and my_func(z+12),

 

то для случая, когда x положительно, этих сложных вычислений можно избежать.

 

Однако включение директивы {$B+} принудит компилятор завершить эти вычисления даже в таком случае. Ее выключение {$B-} вернет обычную схему вычислений.



<== предыдущая лекция | следующая лекция ==>
Арифметические операции | Эквивалентность


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.028 сек.