В этом разделе описывается скромная библиотека математических функций, встроенных в HomeLisp. Математические функции, относящиеся к «классическому» Лиспу описаны в соответствующем разделе документации. Основное назначение приводимой библиотеки — обеспечение графики и численных методов.
Функция ACS принимает единственный аргумент числового типа (FIXED или FLOAT). Она вычисляет значение арккосинуса от значения аргумента. Тип значения, разумеется, всегда FLOAT. Если значение аргумента превышает по модулю единицу, выдается сообщение, а результат устанавливается равным атому ERRSTATE Примеры:
(acs -1) ==> 3.14159265358979 (acs 1) ==> 0.0 (acs 0.5) ==> 1.0471975511966 (acs 1.5) Модуль аргумента ACS превышает 1 ==> ERRSTATE (* 4 5 (acs 3)) Модуль аргумента ACS превышает 1 ==> ERRSTATE
Функция ASN принимает единственный аргумент числового типа (FIXED или FLOAT). Она вычисляет значение арксинуса от значения аргумента. Тип значения, разумеется, всегда FLOAT. Если значение аргумента превышает по модулю единицу, выдается сообщение, а результат устанавливается равным атому ERRSTATE Примеры:
Таблица значений тригонометрических функций — как её запомнить!!!
(asn 1) ==> 1.5707963267949 (asn -1) ==> -1.5707963267949 (asn 0) ==> 0.0 (asn 1.5) Модуль аргумента ASN превышает 1 ==> ERRSTATE (* 5 6 (asn 6) 5) Модуль аргумента ASN превышает 1 ==> ERRSTATE
Функция ATN принимает единственный аргумент числового типа (FIXED или FLOAT). Она вычисляет значение арктангенса от значения аргумента. Тип значения, разумеется, всегда FLOAT. Примеры:
(atn 1) ==> 0.785398163397448 (asn -1) ==> -0.785398163397448 (atn 0) ==> 0.0
Функция CH принимает единственный аргумент числового типа (FIXED или FLOAT). Она вычисляет значение гиперболического косинуса от значения аргумента. Тип значения, разумеется, всегда FLOAT. Используется прямое выражение гиперболического косинуса через экспоненту:
ch(x)=0.5(e x +e -x )
Если значение аргумента превышает 300, возникает переполнение. Примеры:
(ch 1) ==> 1.54308063481524 (ch -1) ==> 1.54308063481524 (ch 100) ==> 1.34405857090807E+43 (ch 400) Переполнение при вычислении CH ==> ERRSTATE
Функция COS принимает единственный аргумент числового типа (FIXED или FLOAT). Она вычисляет значение косинуса от значения аргумента. Тип значения, разумеется, всегда FLOAT. Аргумент должен выражаться в радианах. Примеры:
(cos 0) ==> 1.0 (cos _Pi) ==> -1.0 (cos -_Pi) ==> -1.0 (cos (* 0.5 _Pi)) ==> -3.49148336110938E-15
Последний пример дает величину, порядка 10 -15 , что практически есть нуль. Не следует забывать, что операции с плавающей точкой выполняются с некоторой погрешностью. То же относится и к вычислению математических функций.
Функция EXP принимает единственный аргумент числового типа (FIXED или FLOAT). Она вычисляет значение экспоненты от значения аргумента. Тип значения, разумеется, всегда FLOAT. Аргумент не должен превышать 300. Примеры:
(exp 0) ==> 1.0 (exp 1) ==> 2.71828182845905 (exp -1) ==> 0.367879441171442 (exp 400) Переполнение при вычислении EXP ==> ERRSTATE
Следует обратить внимание на то, что в числе встроенных функций HomeLisp имеется функция EXPT, позволяющая вычислить X y (при разумных значениях X и y). В принципе можно вычислить e x с использованием EXPT, введя (EXPT _E x). Функция EXP сделает это же действие быстрее.
Логарифмы с нуля за 20 МИНУТ! Introduction to logarithms.
Функция LOG принимает единственный аргумент числового типа (FIXED или FLOAT). Она вычисляет значение натурального логарифма от значения аргумента. Тип значения, разумеется, всегда FLOAT. Аргумент должен быть положительным числом. Примеры:
(log 1) ==> 0.0 (log 5) ==> 1.6094379124341 (log 50) ==> 3.91202300542815 (log _E) ==> 1.0 (log 0) Попытка вычислить логарифм неположительного числа ==> ERRSTATE (log -100) Попытка вычислить логарифм неположительного числа ==> ERRSTATE
При необходимости вычислить логарифм по основанию, отличному от e, можно воспользоваться формулой:
В частности, для вычисления десятичного логарифма подойдет функция lg, определение которой вместе с примерами вызова приводится ниже.
(defun lg (x) (/ (log x) (log 10))) ==> lg (lg 1000) ==> 3.0 (lg 10) ==> 1.0 (lg 0.01) ==> -2.0
Функция RND принимает единственный аргумент числового типа (FIXED или FLOAT). Функция выдает случайное число из диапазона [0,X], где X — значение аргумента. Если аргумент имеет тип FIXED, то и результат будет иметь тип FIXED. Соответственно, при вызове функции с аргументом типа FLOAT, результат будет иметь тип FLOAT. Примеры:
(rnd 1) ==> 0 (rnd 1) ==> 1 (rnd 1) ==> 1 (rnd 1) ==> 0 (rnd 1.0) ==> 0.423560559749603 (rnd 1.0) ==> 0.441152453422546 (rnd 1.0) ==> 0.921030580997467 (rnd 1.0) ==> 0.320934772491455 (rnd 1.0) ==> 0.290106475353241 (rnd 2.0) ==> 1.62687706947327 (rnd 100.0) ==> 13.8400852680206 (rnd 100) ==> 92
Функция RND вызывает соответствующую функцию Visual Basic. Предварительной рандомизации не требуется — она выполняется автоматически при инициализации среды HomeLisp.
Функция ROUND принимает два аргумента: первый должен иметь тип FLOAT, а второй — FIXED. Функция выполняет округление значения первого аргумента, оставляя количество десятичных знаков, заданное значением второго аргумента. Примеры:
(round 567.56 1) ==> 567.6 (round 567.56 0) ==> 568.0
Функция SH принимает единственный аргумент числового типа (FIXED или FLOAT). Она вычисляет значение гиперболического синуса от значения аргумента. Тип значения, разумеется, всегда FLOAT. Используется прямое выражение гиперболического синуса через экспоненту:
sh(x)=0.5(e x -e -x )
Если значение аргумента превышает 300, возникает переполнение. Примеры:
(sh 1) ==> 1.1752011936438 (sh -1) ==> -1.1752011936438 (sh 100) ==> 1.34405857090807E+43 (sh 400) Переполнение при вычислении SH ==> ERRSTATE
Функция SIGN принимает один аргумент типа FIXED или FLOAT. Для положительных значений аргумента функция возвращает 1, для отрицательных -1, а для нулевых — 0. Тип результата совпадает с типом аргумента. Примеры:
(sign 5) ==> 1 (sign -5) ==> -1 (sign 0) ==> 0 (sign 1.0) ==> 1.0 (sign -1.0) ==> -1.0 (sign -0.0) ==> 0.0
Функция SIN принимает единственный аргумент числового типа (FIXED или FLOAT). Она вычисляет значение косинуса от значения аргумента. Тип значения, разумеется, всегда FLOAT. Аргумент должен выражаться в радианах. Примеры:
(sin 0) ==> 0.0 (sin (* 0.5 _pi)) ==> 1.0 (sin _pi) ==> 1.22460635382238E-16
Последний пример дает величину, порядка 10 -16 , что практически есть нуль. Не следует забывать, что операции с плавающей точкой выполняются с некоторой погрешностью. То же относится и к вычислению математических функций.
Функция SQR принимает единственный аргумент числового типа (FIXED или FLOAT). Она вычисляет значение квадратного корня от значения аргумента. Тип значения, разумеется, всегда FLOAT. Примеры:
(sqr 25) ==> 5.0 (sqr 625) ==> 25.0 (sqr 2) ==> 1.4142135623731 (sqr 3) ==> 1.73205080756888 (sqr -9) Попытка извлечь квадратный корень из отрицательного числа ==> ERRSTATE
Следует обратить внимание на то, что в числе встроенных функций HomeLisp имеется функция EXPT, позволяющая вычислить X y (при разумных значениях X и y). В принципе можно вычислить квадратный корень от x с использованием EXPT, введя (EXPT x 0.5). Функция SQR сделает это же действие быстрее.
Источник: homelisp.ru
Функции позволяющие вычислять в программах значения синуса косинуса логарифма и т п называются
Тысячи правильных ответов на различные тесты
Тысячи проверенных ответов
Вопрос теста:
Функции, позволяющие вычислять в программах значения синуса, косинуса, логарифма и т.п. называются
- тригонометрические
- пользовательские
- стандартные
- арифметические
- алгебраические
Встроенные математические функции.
Выражение представляет собой запись, указывающую, какие операции следует произвести над данными, чтобы получить требуемое значение. В
ыражения Арифметические Текстовые Арифметическое выражение– это символьная запись, составленная из чисел, имен переменных и элементов массивов, встроенных функций, знаков арифметических операций, круглых скобок и имеющая смысл с точки зрения математики. Арифметическое выражение задает правило вычисления числового выражения. Текстовое выражение. В частном случае текстовым выражением является текстовая переменная. При записи арифметических выражений необходимо придерживаться следующих правил и ограничений:
- Все символы выражения записываются в одну строку. Многоэтажные выражения, верхние и нижние индексы запрещены.
- Два знака арифметических операций не должны располагаться рядом. Знак умножения опускать нельзя.
- Операции в арифметическом выражении выполняются в порядке старшинства:
- Операции внутри скобок;
- Вычисления встроенных функций;
- Возведение в степень;
- Операции умножения и деления;
- Операции целочисленного деления;
- Операции деления по модулю;
- Операции деления и умножения.
Операции равного старшинства выполняются по порядку слева направо.Примеры записи арифметических выражений: 1.
; 2.
; 3.
. Задания для самостоятельного выполнения. Данные математические выражения записать на языке Basic.
.
.
Источник: studfile.net