Дьяконов В.П. Maple 9.5 и 10 в математике, физике и образовании (1185901), страница 15
Текст из файла (страница 15)
й в н~ ея м >~е~ г ~ >.."*. ила 2б > я1пы.1 о еи4тв9вла 1. 17. Особеннопии сиоиелгы Л1др!е 10 Это также говорит в пользу прил!енения классического интерфейса или, если желательно пользоваться всеми новыми возможностями Мар!е 9.5/10 переходить к варианту стандартного интерфеиса. 1. Ь г. ЬЧ. Применение шаблонов (Тегпр1атев) в Мар!е 10 Мы уже отл~етнли возможность работы с докул~енталш Мар!е 10 в двух режил~ах подготовки документов — Восцгпеп! Мос1е и Фогкл1~ее! Моде В подменю !Чев позиции г11е л!еню Мар!е !О есть еще один новый режим подготовки документов — с полюшью шаблонов Тегпр!а!ел — рис.
!.73. 102 И Реет Мо П, Р а*тел та Ре СРЕПос л' Р,'ет 'т ',тт "т ; 'т Пт еее*Р 55о тот етое ! \ЕЕО ' о еп т «елее ет .о с еет Е 5 е Ла.ес о ЮРРо 55С оо т ,! Лат *ЕопесеПП атс Ет еп РС;.„, „, „„, Глава 1. Основы работы с Мар1е 9.5/10 сооттеетт Ооес т ~ те с т ес те т ееепт Р!о! и Т!Е!.ее-!)!и)еимоии! !т иис!!ои , ''е Веесп$5!топ 'Ер)от а пастспассЫ 6.тльоп Етеапе а !тпслоп л У = (Л,У) Л тп!„У) р = (л, у) -т л~ ттл!Р) яресеее ие талгат, опт! Еттепр)от сто в ссып ) РЕРЕЫЦ вЂ” )О !О.
— В л)! Глава 2 Типы данных и работа с ними Системы компьютерной математики, как и любые другие программные средства, работают с даниыми и осуществляет их обработку. Поскольку СКМ ориентированы на подготовку документов самого различного характера (в том числе электронных документов и книг), то они обладает обширным набором возможных типов данных и средствами для работы с ними.
В данной главе рассмотрены типы данных систем Мар!е 9.5/10 и работа с ними. 2.1. Работа с простыми данными Мар!е-языка 2.1.1. Использование знаков алфавита Алфавит Мар1е-языка (как входного, так и программирования) содержит 26 малых латинских букв (от а до к), 26 больших латинских букв (от А до Е), 1О арабских цифр (от О до 9) и 32 специальных символа (арифметические операторы +, —, *, l, знак возведения в степень ' и др.).
Кроме того, имеется множество особых математических символов. Все они будут описаны в данной главе. Для ввода символов используется клавиатура и панели математических символов. Имеется пять пар альтернативных символов (означающих одно и тоже): "и" 1и (1 )и 1) ( и (' )я ) К специальным одиночным и составным знакам относятся следующие элементы синтаксиса языка: ° % — системная переменная, хранящая результат предшествующей операции; °: — фиксатор выражения, предотвращающий вывод результата вычисления в ячейку вывода; °; — фиксатор выражения, дающий вывод результата вычисления в ячейку вывода: ° 11 — указатель программного комментария; ° ' — ограничитель строки (например 'в1ппд'); °:= — оператор присваивания (например х:=5); °;; — пустой оператор; °:: — указатель типа переменной (например, п:з(п1ейег или вхсоп~р1ех); ° ( — знак обратного деления.
который имеет множественные значения в зависимости от контекста (см. справку по этому знаку — Ьаскз)азЬ). Колтентарии в программе, не выводимые в ячейки вывода, в Мар1е 9.5 задаются после символа 11. В них допустимо использовать все символы кодовых таблиц, что важно при вводе русскоязычных комментариев, использующих символы кириллицы. Применение последних для идентификаторов (имен) объектов нежелательно, хотя иногда и возможно. 1Р5 2.1. Работа с простыми данными Мар!е-языка 2.1.2. Зарезервированные слова Зарезервированпые слова используются для создания условных выражений, циклов, процедур и управляющих команд.
Список зарезервированных слов в системе Мар(е, дан ниже. бевспрвоп Вгеек Се!сп ьу е1К епб 0опе Е1ве Ргпе!1у 1и Ехроб 0!ОЬе1 епог !и!егвес! Мгпов глоб гпоб ого пех! !осе! Об ор!гоп орвопв Пе!огп по! ог Оо!! ргос вече Тпеп оп!оп в!ор !М~11е ове Этими словами нельзя называть обьекты пользователя. Совокупность правил, по которым записываются определения всех объектов Мар!е-языка, называется его сиптаксисоиг. Некоторые особенности синтаксиса полезно знать уже в начале освоения Мар!е. Например, то что знак — (минус) имеет двойное значение. Применительно к одному числу, переменной или выражению он меняет их знак. Однако два знака минус подряд (например, в записи — 3) задавать нельзя. Другое назначение знака минус — создание операции вычитания, например, 5-2 или а — Ь.
Соответственно двойное назначение имеет и знак+, причем число без знака считается положительным, так что +5=5. При вводе действительных чисел с порядком для указания порядка используется символ " (например, 2*10" 100 или 2*10"-100). Для возведения числа в степень наряду с оператором " можно использовать и составной оператор * (две звездочки подряд). Для изменения общепринятого приоритета вычислений используются круглые скобки, в них же задаются параметры функций и процедур.
Более подробно синтаксис Мар(е-языка рассматривается ниже. Некоторые операторы представлены двумя символами — например. оператор присваивания переменным их значения:= содержит двоеточие и знак равенства. В таких операторах между символами недопустим знак пробела. Однако его можно использовать между отдельными частями выражений — так, (а+Ь)/с эквивалентно (а+ Ь) /с. 2.1.3. Работа с числами и арифметические вычисления 598 47 > -12+34*471 )586 Мар(е обеспечивает вполне естественную работу с целыми числами. В частности обеспечивается смена знака числа и выполнение основных арифметических операций с числами.
Ввиду общеизвестности арифметических операций их определения не приводятся. Ограничимся примерами простых операций с числами, приведенными ниже: > 12+34/471 Глава 2. Типы данных и работа с ними > 12*10"(-15)*З; 250000000000000 Результаты операций с целыми числами в обшем случае представляются рациональными числалш, являющимися отношениями целых чисел. десятичная точка в числах имеет особый статус — указание ее в любом месте числа, в том числе в конце, делает число вещественным и ведет к переводу вычислений в режим работы с вещественными числами. Например: > 12 . *10" (-15) *Зс 3600000000 !0-)з Количеством выводимых после десятичной точки цифр можно управлять, задавая значение системной переменной окружения (310!!в: > озолса:=3: 1./ЗР .333 > ололеа:=10; ехр(1.) )З)8)ге:= !0 2.718281828 > 01о1еаг=40: еча1т(Р1); 3.141592653589793238462643383279502884197 Как видно из этих примеров, ввод и вывод чисел имеет следующие особенности: ° для отделения целой части мантиссы от дробной используется разделительная точка; ° нулевая л(антисса не отображается (число начинается с разделительной точки); ° мантисса отделятся от порядка пробелом, который рассматривается как знак умножения; ° мнимая часть комплексных чисел задается ул(ножением ее на символ л(нимой единицы 1 (квадратный корень из -1); ° по возможности Мар)е представляет численный результат в виде точного рационального числа (отношения двух целых чисел).
Для работы с числами Мар!е имеет множество функций. Они будут рассмотрены в дальнейшем. С помощью многофункциональной функции сопчеП Мар1е может преобразовывать числа с различным основанием (от 2 до 36, в том числе бинарные и шестнадцатеричные) в десятичные числа: > сопчехс("11001111", оеслеа1, олпагу); 207 > сопчехс("1)(Г.С", оеслеа1, пех)) 431.7500000 > сопчегх("Нар1е", с)есппа1, Зб); 37451282 2.1. Работа с простыми данными Марlе-языка 2.1.4. Точная арифметика Благодаря возможности выполнения символьных вычислений Мар!е, как и другие СКА, реализует точную арпфме>пику.
Это значит, что результат может быть получен с любым числом точных цифр. Однако надо помнить, что идеально точные численные вычисления выполняются только в случае целочисленных операций, например, таких как приведены ниже: > 101!> 942594775983835942085162312448293674956231279470254376832 1 78893534169775993!622147650308786159180834691162349000 1 3549599583369706302603264000000000000000000000000 > <1О).)+1)-101>: > (10005»ЛОООО» 100150085022502740!20 > 2"101-2"100; 1267650600228229401496703205376 > 2"(2" (2"2)); 65536 > 2"101-2"100.0; 0 !267650600 101> > 0191Е5> 10 Обратите внимание на то, что в последнем примере точность резко потеряна, так как показатель степени !00.0 был задан как число с плавающей точкой. Соответственно и результат оказачся в форме такого числа. Число верных цифр результата задает системная переменная П8!(5 (по умолчанию 10).
Приведем еще пару примеров точных вычислений некоторых функций (с точностью до 150 знаков мантиссы): > еча11(ехр<1),150)> 2.71828182845904523536028747135266249775724709369995957496 1 696762772407663035354759457138217852516642742746639193 1 200305992181741359662904357290033429526 > еча11 (51ке(1. ), 150) > 0.84147098480789650665250232163029899962256306079837106567 1 275170999191040439123966894863974354305269585434903790 1 7920674293259118920991898881193410327729 2.1.5. Вычисление числа к с произвольной точностью Разработчики систем Мар(е и Ма(!>еп>а1!са утверждают, что в принципе возможны вычисления и с плавающей точкой с заданием до миллиона точных цифр мантиссы.
Практически такая точность почти никогда не нужна, по крайней Глава 2. Типы данных и работа с ншчи Г, е~ е«~ о" в»» ь»»» с»ь [ Проверка формулы Рамануджанв для точного вычисления числа 1Гр~ =)е1М Щ»! !» к ""' ,«С ' » / (" ! т'е "!«с к'1'„':,',. ..,.,:,"'1'„'". ' ь.;.; !с.*,'' ','.,: ',ч; ...'; «'." мере лля физиков и инженеров Например, всего 39 точных цифр числа и достаточно, чтобы вычислить длину окружности всей Вселенной с точностью до диаметра атома водорола. Однако истинные математики одно время были просто «помешаны» на вычислении числа л с большой точностью.