русс | укр

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

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

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

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


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

Преобразование математических выражений


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


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

x1/2 – sqrt(x)

|x| – abs(x)

Знак x (возвращает 1, -1 или 0) – sign(x)

Тригонометрические функции: sin(x), cos(x), tan(x), cot(x)

Обратные тригонометрические: arcsin(x), arccos(x), arctan(x), arccot(x)

Экспонента: exp(x)

Натуральный, десятичный логарифм и логарифм по данному основанию: ln(x), log10(x), log[a](x)

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

> A:=sin(sqrt(Pi)+exp(2));

Довольно часто в качестве выражений выступают многочлены от одной или нескольких переменных или рациональные выражения. Maple содержит различные функции для преобразования таких выражений.

Функция factor(eq) разлагает выражение eq на множители.

> P:=x^4+2*x^3+2*x^2+2*x+1:

factor(P);

Функция expand(eq) раскрывает скобки в выражении. Если указать один или несколько дополнительных параметров в виде expand(eq,a,b,c), то выражения a, b, c раскрываться не будут. Это полезно, если необходимо каждое слагаемое умножить на какое-то выражение.

Примеры:

> expand((x+1)*(x+2));

 

> expand(sin(x+y));

> expand((x+1)*(y+z),x+1);

 

Для приведения дробей к общему знаменателю с последующим сокращением используется функция normal(eq).

> normal(1/x+1/y);

 

> (a^4-b^4)/((a^2+b^2)*a*b);

> normal(%);

Функция simplify(eq) упрощает выражение eq. В качестве второго (необязательного) параметра, ей можно указать, какие выражения преобразовывать: trig – тригонометрические, power – степенные, radical – радикалы, exp – экспоненты, ln – логарифмы.

Пример:

> simplify(sin(x)^2+cos(x)^2);

Предел вычисляется при помощи функции limit. Ее синтаксис: limit(f(x),x=a), где f(x) – функция, предел которой необходимо вычислить, a – точка, в которой вычисляется предел:



> > limit(sin(x)/x,x=0);

В качестве точки могут фигурировать константы infinity и -infinity:

> > limit( (1+1/n)^n, n=infinity);

Если нужно вычислить левый или правый предел в точке, необходимо добавить еще один параметр left или right соответственно:

> > limit(abs(x)/x, x=0, left);

> limit(abs(x)/x, x=0, right);

Для вычисления сумм используется функция sum. Ее синтаксис: sum(f(k),k=a..b), где k – переменная, по которой осуществляется суммирование, f(k) – суммируемые слагаемые, зависящие от k, a и b – пределы суммирования. Например, сумма первых 100 натуральных чисел равна 5050, а сумма их квадратов – 338350:

> sum(k,k=1..100);

> sum(k^2,k=1..100);

При задании параметров можно использовать константу infinity, тогда будет вычислена сумма бесконечного ряда. Например, вычислим сумму бесконечной геометрической прогрессии со знаменателем q:

> > sum(q^k,k=0..infinity);

Для вычисления конечных или бесконечных произведений используется функция product с аналогичным синтаксисом:

> product(i,i=1..6);

> product( (1+1/i^2), i=1..infinity);

В последнем примере фигурирует специальная математическая функция "гиперболический синус" (sinh). Это аналог синуса, определенный не на единичной окружности, а на гиперболе. При необходимости, можно вычислить значение численно:

> evalf (product((1+1/i^2), i=1..infinity));

 

Большинство функций Maple для исcледований в области теории чисел содержатся в модуле numtheory. Для его подключения необходимо дать команду with(numtheory).

Функция floor(x)округляет число x вниз, ceil(x) округляет число вверх, функция round(x) округляет x до ближайшего целого, функция trunc(x) возвращает floor(x) для положительных x и floor(x) – для отрицательных. Функция frac(x) возвращает дробную часть числа x.

Для нахождения частного при целочисленном делении используется функция iquo, для вычисления остатка от деления – функция irem. У этих функций два параметра: делимое и делитель. Примеры:

> iquo(9,2);

> irem(9,2);

Для нахождения наибольшего общего делителя двух чисел используется функция igcd, для нахождения наименьшего общего кратного – функция ilcm. Пример:

> igcd(2224,122);

> igcd(13,17);

> ilcm(34,78);

Для проверки числа на простоту используется функция isprime, которая возвращает true, если число простое и false – если составное. Для разложения числа на множители используются функции ifactor и ifactors. Первая функция возвращает результат в виде произведения степеней простых чисел, вторая – в виде списка простых чисел и их степеней. Все эти функции работают значительно эффективней простого подбора делителей, проверка на простоту осуществляется быстрее полного разложения на множители.

Для построения простых чисел используются функции prevprime, nextprime, ithprime. Функция prevprime(n) возвращает наибольшее простое число, которое меньше n, функция nextprime(n) - которое больше n. Функция ithprime(n) возвращает n-е простое число.

Для нахождения случайного простого числа следует использовать эти функции вместе с функцией rand(), которая возвращает псевдослучайное 12-значное натуральное число. Для инициализации генератора псевдослучайных чисел необходимо использовать функцию randomize().

> isprime(137);

> isprime(2219);

 

> ifactor(2219);

> ifactors(2219);

> ifactor(408);

 

 

> > nextprime(408);

> isprime(408);

> isprime(409);

> ithprime(3);



<== предыдущая лекция | следующая лекция ==>
Числа и константы | Численное решение уравнений


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


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

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

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


 


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

 
 

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

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