* Данный текст распознан в автоматическом режиме, поэтому может содержать ошибки
198
Работа с математическими выражениями и функциями
Приведенные выше сигналы нередко можно формировать, используя функ ции с условиями, например функцию signum. Однако достоинство моделирова ния сигналов с помощью только элементарных функций заключается в том, что такие сигналы нередко могут обрабатываться аналитически, тогда как для функ ций с условиями это возможно далеко не всегда.
3.2.6. Некоторые целочисленные функции и факториал
Ниже представлены наиболее распространенные целочисленные функции Maple, используемые в теории чисел: • factorial(n) – функция вычисления факториала (альтернатива – опе ратор !); • iquo(a,b) – целочисленное деление a на b; • irem(a,b) – остаток от деления a на b; • igcd(a b) – наибольший общий делитель; • lcm(a,b) – наименьшее общее кратное. Факториал целого числа N задается как N=1*2*3*…*N при особых случаях 0!=1 и 1!=1. Полезность возможности Maple вычислять факториалы больших чисел де монстрирует следующий пример. Пусть в группе студентов 25 человек, а в году 365 дней. Тогда вероятность того, что ни у кого из студентов дни рождения не совпадают, составит:
> > evalf(%);
p = 0.2780571566 10–25 При обычной арифметике был бы получен 0 или сообщение о некорректности операций из за превышения разрядной сетки компьютера. А вот еще более характерный пример такого рода. Пусть вероятность рожде ния мальчика 0.515. Какова вероятность того, что среди 1000 новорожденных мальчиков будет не менее половины? Расчетная формула требует вычисления факториала 1000!:
> > evalf(%);
p = 0.8366435978 Если увеличить число рождаемых мальчиков до 10 или 100 тысяч, то такая за дача может послужить хорошим тестом не только на работу с очень большими числами, но и на скорость вычислений. Решение подобных задач без применения аппарата точной арифметики больших чисел встречает немалые трудности, а под час и просто невозможно.